matlab関数ハンドル(function handle)


転載は黄朝輝のブログから
前言
関数ハンドルは、関数を参照する情報を含むMATLABのデータ型です.
関数ハンドルを使用するメリット
  • は、関数アクセス情報を他の関数
  • に伝達する.
  • は、サブ関数およびプライベート関数へのより広いアクセスを可能にする
  • 定義する関数の数を減らす
  • 繰り返し動作の性能を改善する
  • .
    簡単な例を次に示します
    addを作成します.mファイル
    内容は次のとおりです.
    function c = add(a,b)
    c = a+b;

    ノーマルコール
    >> add(10,12)
    
    ans =
    
        22
    
    >> 

    関数ハンドルによる呼び出し
    >> addHandle = @add;
    >> feval(addHandle,10,12)
    
    ans =
    
        22
    
    >> 

    上記のコードに示すように、matlabでは@記号で関数ハンドルを作成します.この例では、add関数にハンドルを作成し、ハンドルの値をaddHandleという変数に割り当てます.