Programming and Data Types | ![]() ![]() |
ハンドルを使って関数を計算
MATLABコマンドfeval
を使って、関数ハンドルのターゲット関数を計算します。このコマンドを関数ハンドルと共に使用するシンタックスは、つぎのものです。
feval(fhandle, arg1, arg2, ..., argn)
これは、fhandle
に、引数arg1
から argn
を渡して直接コールするものと同じ挙動をします。根本的な違いは、つぎのことです。
関数の計算と多重定義
関数ハンドルと多重定義の間の関係を理解するためには、MATLAB関数のコールの仕方を簡単にレビューすることが手助けになります。多重定義は、いくつかのコードソースから構成される単一のMATLAB関数を考える場合に有効になります(たとえば、組み込みやM-ファイル)。feval
を使わないでMATLAB関数をコールした場合、どちらのソースを選択するかは、つぎの2つの要因に依存します。
MATLAB
は、同様な方法で関数ハンドルを計算します。多くの場合、関数ハンドルは、関数を多重定義するメソッドを集めたものを表します。ユーザが、feval
を使って、関数ハンドルを計算する場合、コールされる特別なメソッドの選択は、つぎの事柄に依存します。
![]() |
関数名の最大長 | 関数ハンドルの計算の例題 | ![]() |