Запустите сессию Engine MATLAB® со своей программы C++ синхронно или асинхронно. Чтобы запустить сеанс, используйте одну из этих служебных функций, которые заданы в matlab::engine пространство имен:
matlab::engine::startMATLAB — Запустите сеанс работы с MATLAB синхронно.
matlab::engine::startMATLABAsync — Запустите сеанс работы с MATLAB асинхронно.
Для получения информации о том, как установить и создать программы механизма C++, видит Сборку Программы Engine C++.
Запустите MATLAB с C++ синхронно. startMATLAB возвращает уникальный указатель на MATLABEngine экземпляр.
#include "MatlabEngine.hpp"
void startMLSession() {
using namespace matlab::engine;
// Start MATLAB engine synchronously
std::unique_ptr<MATLABEngine> matlabPtr = startMATLAB();
}Запустите MATLAB с C++ асинхронно. Используйте FutureResult::get получить уникальный указатель на MATLABEngine экземпляр, который возвращен startMATLABAsync.
#include "MatlabEngine.hpp"
void startMLSessionAsync() {
using namespace matlab::engine;
// Start MATLAB engine asynchronously
FutureResult<std::unique_ptr<MATLABEngine>> matlabFuture = startMATLABAsync();
std::unique_ptr<MATLABEngine> matlabPtr = matlabFuture.get();
}Можно запустить, сеанс работы с MATLAB с помощью поддержал опции запуска MATLAB. Для получения информации об опциях запуска MATLAB смотрите Обычно Используемые опции запуска. Для получения информации об опциях запуска, поддержанных механизмом, смотрите matlab::engine::MATLABEngine.
Этот пример кода запускает MATLAB с помощью -r и matlab.engine.ShareEngine опции. Создайте вектор, содержащий каждую опцию как элемент в векторе.
#include "MatlabEngine.hpp"
void startMLOptions() {
using namespace matlab::engine;
// Start MATLAB with -r option
std::vector<String> optionVec;
optionVec.push_back(u"-r");
optionVec.push_back(u"matlab.engine.shareEngine");
std::unique_ptr<MATLABEngine> matlabPtr = startMATLAB(optionVec);
}matlab::engine::startMATLAB | matlab::engine::startMATLABAsync