mexFunction (C)
C 行列 API で作成された C/C++ MEX 関数へのエントリ ポイント
C 構文
#include "mex.h" void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
説明
メモ
最新の C++ の機能とC++ 用の MATLAB データ APIを使用して MEX 関数を作成するには、MATLAB (MEX ファイル) から呼び出せる C++ 関数の記述を参照してください。
mexFunction は呼び出されるルーチンではありません。そうではなく、mexFunction は C のゲートウェイ関数の名前で、これは各 MEX 関数に必要です。MEX 関数を呼び出すと、MATLAB® によって同名の対応する MEX 関数が検索され、読み込まれます。MATLAB は次に、MEX 関数内で mexFunction という名前のシンボルを検索します。シンボルが見つかった場合は、mexFunction シンボルのアドレスを使用して MEX 関数が呼び出されます。MEX 関数内に mexFunction という名前のルーチンが見つからない場合、MATLAB はエラー メッセージを表示します。
MEX 関数を呼び出すと、MATLAB では nlhs、plhs、nrhs、prhs に呼び出し引数を自動的に設定します。MATLAB 言語の構文では、関数は次の一般的な形式になります。
[a,b,c,...] = fun(d,e,f,...)
ここで、... は同じ形式のさらに多くの項目を表します。a,b,c... は左辺出力引数で、d,e,f... は右辺入力引数です。nlhs と nrhs の引数には左辺引数と右辺引数の数がそれぞれ含まれています。prhs は mxArray ポインターの配列で、長さは nrhs です。plhs は長さが nlhs の配列で、関数は出力 mxArray に対してポインターを設定しなければなりません。
メモ
nlhs = 0 であっても出力値を返すことは可能です。これは、結果を変数 ans に返すことに相当します。
入力引数を渡す実験を行うには、MEX 関数のソース コード例の表の手順に従って mexfunction.c の例を作成します。
入力引数
例
例を開くには、次のように入力します。
edit([fullfile(matlabroot,"extern","examples","mex","filename")]);
ここで filename は、次のようになります。
バージョン履歴
R2006a より前に導入