Main Content

COM エラー メッセージにおける引数コールアウトの解釈

MATLAB® クライアントが無効な引数をもつコマンドを COM サーバー アプリケーションに送信すると、サーバーはエラー メッセージを次のような形式で送り返します。

??? Error: Type mismatch, argument n.

ドット構文形式を使用しない場合、このメッセージの引数番号の解釈には注意が必要です。

たとえば、ドット構文を使用して以下を入力します。

handle.PutFullMatrix('a','base',7,[5 8]);

MATLAB に以下のように表示されます。

??? Error: Type mismatch, argument 3.

この場合、引数 7 は無効です。これは、関数 PutFullMatrix が 3 番目の引数にはスカラーではなく配列のデータ型を想定しているためです。この例では、エラー メッセージは 7argument 3 と示しています。

ただし、以下の構文を使用する場合、

PutFullMatrix(handle,'a','base',7,[5 8]);

MATLAB に以下のように表示されます。

??? Error: Type mismatch, argument 3.

この関数 PutFullMatrix の呼び出しにおいて、7 は引数 4 です。ただし、COM サーバーは最初の引数を受け取りません。handle 引数はサーバーを特定するだけです。この引数はサーバーに渡されません。サーバーは 'a' を最初の引数として、また、無効な引数 7 を 3 番目の引数として読み取ります。

関連するトピック