メインコンテンツ

matlab::engine::startMATLAB

MATLAB を同期的に起動する

説明

std::unique_ptr<MATLABEngine> startMATLAB(const std::vector<String>& options = std::vector<String>())

std::unique_ptr<MATLABEngine> startMATLAB(const matlab::engine::MATLABApplicationMode mode, const std::vector<String>& options = std::vector<String>()) (R2026a 以降)

オプションの MATLAB® 起動オプションを指定して MATLAB を同期的に起動します。アプリケーション モードを指定しなかった場合、MATLAB は別のプロセスで起動します。それ以外の場合は、MATLAB は指定されたアプリケーション モードで起動します。同一のアプリケーション内でインプロセス エンジンとアウトプロセス エンジンを併用することはできません。

インクルード

名前空間:

matlab::engine
インクルードMatlabEngine.hpp

パラメーター

const std::vector<String>& options

MATLAB の起動に使用するオプション。複数の起動オプションを指定できます。エンジンは、サポートされない起動オプションに記載されているオプションを除くすべての MATLAB 起動オプションをサポートします。オプションのリストについては、プラットフォーム固有の matlab (Windows) コマンド、matlab (macOS) コマンド、または matlab (Linux) コマンドを参照してください。

const matlab::engine::MATLABApplicationMode mode (R2026a 以降)

アプリケーションを起動するモード:

  • MATLABApplicationMode::IN_PROCESS

  • MATLABApplicationMode::OUT_OF_PROCESS

アプリケーションの実行ごとに、インプロセスでの MATLAB の起動は 1 回だけ許可されます。インプロセスの MATLAB セッションがアクティブなときに startMATLAB を再度呼び出すと、関数は既存の MATLAB へのポインターを返します。

インプロセスの MATLAB を終了した場合、別の MATLAB を再起動することはできません。

アプリケーションでは、インプロセス エンジンまたはアウトプロセス エンジンのいずれかを使用できます。

例については、C++ からの MATLAB セッションの開始を参照してください。

戻り値

std::unique_ptr<MATLABEngine>

MATLABEngine オブジェクトへのポインター

例外

matlab::engine::EngineException

MATLAB を起動できませんでした。

サポートされない起動オプション

エンジンは次の MATLAB 起動オプションをサポートしていません。

  • -h

  • -help

  • -?

  • -n

  • -e

  • -logfile

MATLAB の起動オプションの詳細については、よく使われる起動オプションを参照してください。

すべて展開する

MATLAB を同期的に起動し、MATLABEngine オブジェクトへの一意のポインターを返します。

std::unique_ptr<MATLABEngine> matlabPtr = startMATLAB();
auto matlabApplication = matlab::engine::startMATLAB({u"-desktop"});

-nojvm オプションを使って MATLAB を起動し、MATLABEngine オブジェクトへの一意のポインターを返します。

std::vector<String> optionVec;
optionVec.push_back(u"-nojvm");
std::unique_ptr<MATLABEngine> matlabPtr = startMATLAB(optionVec);

バージョン履歴

R2017b で導入

すべて展開する