Main Content

C++ 言語の不透明なオブジェクト

不透明なオブジェクトには、MATLAB® が認識できるプロパティやメソッドがありません。これらのオブジェクトは、その処理方法が実装されている、関連する関数に渡すことができます。不透明なオブジェクトを返した関数の使用方法の詳細については、当該関数のドキュメンテーションを参照してください。

たとえば、次の C++ コードでは SessionHandletypedef void* として定義しています。

typedef void* SessionHandle;
SessionHandle getHandle(){
    // implement code here
};
void closeHandle(void * SessionHandle){};

MATLAB インターフェイス lib の生成後、getHandle を呼び出します。

sessionHandle = clib.lib.getHandle
sessionHandle =
    SessionHandle is an opaque object.

SessionHandle のヘルプは、次のようになります。

clib.lib.SessionHandle    C++ opaque type.

MATLAB の変数 sessionHandle をライブラリ内の別の関数に渡すことができます。

clib.lib.closeHandle(sessionHandle)