Main Content

C++에서 MATLAB 세션 시작하기

C++ 프로그램에서 동기식 또는 비동기식으로 MATLAB® 엔진 세션을 시작합니다. 세션을 시작하려면 matlab::engine 네임스페이스에 정의된 다음 유틸리티 함수 중 하나를 사용하십시오.

C++ 엔진 프로그램을 설정하고 빌드하는 방법에 관한 자세한 내용은 C++ 엔진 프로그램 빌드하기 항목을 참조하십시오.

MATLAB 세션을 동기식으로 시작하기

C++에서 MATLAB을 동기식으로 시작합니다. 그러면 startMATLABMATLABEngine 인스턴스에 대한 고유 포인터를 반환합니다.

#include "MatlabEngine.hpp"
void startMLSession() {
    using namespace matlab::engine;

    // Start MATLAB engine synchronously
    std::unique_ptr<MATLABEngine> matlabPtr = startMATLAB();
}

MATLAB 세션을 비동기식으로 시작하기

C++에서 MATLAB을 비동기식으로 시작합니다. FutureResult::get을 사용하여 startMATLABAsync에서 반환된 MATLABEngine 인스턴스에 대한 고유 포인터를 가져옵니다.

#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 시작 옵션에 대한 자세한 내용은 일반적으로 사용되는 시작 옵션 항목을 참조하십시오. 엔진에서 지원되는 시작 옵션에 대한 자세한 내용은 matlab::engine::MATLABEngine을 참조하십시오.

이 샘플 코드는 -r 옵션 및 matlab.engine.ShareEngine 옵션을 사용하여 MATLAB을 시작합니다. 벡터의 요소로 각 옵션을 포함하는 벡터를 만듭니다.

#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);
}

참고 항목

|

관련 항목