0

重複の可能性:
C++ から呼び出されたコンパイル済みの matlab ファイル

MATLAB で mcc の例を調べましたが、何かが明確ではありません。誰かが明確にしてもらえますか?この例では、次のようになります。

function a = addmatrix(a1, a2) a = a1 + a2;

mcc を使用してコンパイルした後、c++ ヘッダー ファイルに次の定義が作成されます。

addmatrix(int nargout, mwArray& a, mwArray& a1, mwArray& a2);

私の質問は、MATLAB 関数の出力が次元 1x5 のベクトルと次元 7x3 の行列を含む構造体である場合、どうあるべきかというnargoutことです。そして、どのように定義すればよいですかmwArray a?

MATLAB 関数の出力は 1 つの構造体だけなので、nargout1 に等しくなければなりませんか? また、C++ コードのmwArrayように定義する必要がありますか?mwArray a(1*5+7*3)

前もって感謝します。

4

1 に答える 1

1

nargoutMatlab コードで明示的に定義しません。むしろ、関数が返す値の数によって暗黙的に定義されます。

于 2012-10-17T15:08:59.293 に答える