matlab::engine::WorkspaceType
MATLAB ワークスペースのタイプ
説明
matlab::engine::WorkspaceType
enum クラスは、変数の受け渡しをする MATLAB® ワークスペースを指定します。
BASE | MATLAB ベース ワークスペース (コマンド ライン、および関数以外のスクリプト) のスコープ内にある変数 |
GLOBAL | MATLAB グローバル ワークスペース (コマンド ライン、関数、およびスクリプト) のスコープ内にある変数 |
MATLAB はワークスペース別に変数をスコープに収めます。ベース ワークスペースのスコープに含まれる変数は、引数として関数に渡さなければなりません。グローバル ワークスペースのスコープに含まれる変数は、特定の変数名をグローバルとして定義するすべての関数によってアクセスできます。
クラスの詳細
名前空間: | matlab::engine |
インクルード | MatlabEngine.hpp |
例
ここでの例では、
共有 MATLAB セッションに接続します。
double 型の数値を含む
matlab::data::Array
を作成します。配列を MATLAB グローバル ワークスペースに入れます。
#include "MatlabDataArray.hpp" #include "MatlabEngine.hpp" #include <iostream> static void putGlobalVar() { using namespace matlab::engine; // Connect to named shared MATLAB session started as: // matlab -r "matlab.engine.shareEngine('myMatlabEngine')" String session(u"myMatlabEngine"); std::unique_ptr<MATLABEngine> matlabPtr = connectMATLAB(session); // Create matlab data array factory matlab::data::ArrayFactory factory; // Create data variable matlab::data::Array data = factory.createArray<double> ({ 1, 5 }, { 4.0, 11.0, 4.7, 36.2, 72.3 }); // Put data variable in MATLAB global workspace matlabPtr->setVariable(u"data", data, WorkspaceType::GLOBAL); }
バージョン履歴
R2017b で導入