Main Content

Windows でのライブラリ関数の呼び出し

前の手順で、matrixlib フォルダー内の C++ matrixOperations ライブラリに対する MATLAB® インターフェイスをビルドしました。

Building interface file 'matrixlibInterface.dll' for clib package 'matrixlib'.
Interface file 'matrixlibInterface.dll' built in folder 'C:\Users\Documents\MATLAB\matrixlib'.

To use the library, add the interface file folder to the MATLAB path.
addpath('C:\Users\Documents\MATLAB\matrixlib')

インターフェイス フォルダーへの MATLAB パスの設定

MATLAB インターフェイス ファイルを MATLAB パスに追加します。

addpath('matrixlib')

インターフェイス フォルダーへのライブラリ ファイルのコピー

MATLAB インターフェイス ファイルがあるフォルダーにコンパイル済みライブラリ ファイルを配置します。選択したコンパイラに基づいて、次のいずれかのステートメントのコメントを解除して実行します。

%copyfile(fullfile(productPath,"win64","mingw64","*.dll"),"matrixlib","f")
%copyfile(fullfile(productPath,"win64","microsoft","*.dll"),"matrixlib","f")

ヘルプの表示

MATLAB コマンド プロンプトで次のコマンドを入力すると、ヘルプ ブラウザーでライブラリのドキュメンテーションが開きます。

doc clib.matrixlib.Mat  %load the package
doc clib.matrixlib      %display package members

パッケージ関数のシグネチャを表示するには、addMatupdateMatByX、および updateMatBySize のリンクをクリックします。

クラス clib.matrixlib.Mat についての情報を表示するには、Mat のリンクをクリックします。

ライブラリ関数の呼び出し

Mat オブジェクトを作成してライブラリの関数を呼び出すには、次のように入力します。

matObj = clib.matrixlib.Mat;   % Create a Mat object
intArr = [1,2,3,4,5];
matObj.setMat(intArr);     % Set the values to intArr
retMat = matObj.getMat(5)  % Display the values
retMat = 1×5 int32 row vector    
   1   2   3   4   5

インターフェイスの共有

インターフェイスを別の MATLAB ユーザーに渡すには、ツールボックス インストール (.mltbx) ファイルを作成します。Distribute MATLAB Interface to C++ Libraryの手順を使用して以下を実行します。

  • ツールボックス フォルダーを、インターフェイス ファイル matrixlibInterface.dll が含まれている matrixlib フォルダーに設定します。

  • 同じフォルダー内に、コンパイル済みライブラリ ファイル matrixOperations.dll を配置します。

  • パッケージ名 (呼び出し構文) を clib.matrixlib として識別します。