matlab::cpplib::initMATLABApplication
启动 MATLAB Runtime 并初始化其应用程序状态
描述
std::shared_ptr<MATLABApplication> initMATLABApplication(matlab::cpplib::MATLABApplicationMode mode, const std::vector<std::u16string>& options = std::vector<std::u16string>())
matlab.cpplib.initMATLABApplication 接受的输入参数是模式和可选的启动选项数组。它返回指向 MATLABApplication 对象的共享指针。该共享指针会被传递给函数 matlab::cpplib::initMATLABLibrary,该函数返回指向用户编写的库的唯一指针。然后,该唯一指针会被用于从该库中调用 MATLAB® 函数
一个进程应该只调用此方法一次。
参数
MATLABApplicationMode mode | 启动应用程序的模式:
|
const std::vector<std::u16string>& options | 用于启动 MATLAB Runtime 的启动选项。它们包括:
|
返回值
| 指向封装应用程序状态的 |
异常
| 函数启动失败。 |
示例
在进程内启动 MATLAB Runtime,使用默认运行时选项
std::shared_ptr<MATLABApplication> appPtr = initMATLABApplication(MATLABApplicationMode::IN_PROCESS);
在进程外启动 MATLAB Runtime,禁用 Java 虚拟机
std::vector<std::string> opts = {"-nojvm"};
std::shared_ptr<MATLABApplication> appPtr = initMATLABApplication(MATLABApplicationMode::OUT_OF_PROCESS, opts);
在进程内启动 MATLAB Runtime,并生成日志文件
std::vector<std::u16string> opts = {u"-logfile",
u"C:\\somepath\\matlab_app.log"};
std::shared_ptr<MATLABApplication> appPtr = initMATLABApplication(MATLABApplicationMode::IN_PROCESS, opts);
版本历史记录
在 R2018a 中推出
另请参阅
matlab::cpplib::runMain | matlab::cpplib::convertUTF8StringToUTF16String | matlab::cpplib::convertUTF16StringToUTF8String | matlab::cpplib::initMATLABLibrary | matlab::cpplib::initMATLABLibraryAsync | matlab::cpplib::MATLABLibrary::feval | matlab::cpplib::MATLABLibrary::fevalAsync | matlab::cpplib::MATLABLibrary::waitForFiguresToClose