Выполните функцию с ее входными параметрами в основной функции
int runMain(std::function<int(std::shared_ptr<MatlabApplication>, int, const char**)>std::shared_ptr<MatlabApplication>&& appsession, int argc, const char **argv);
Выполните функцию с ее входными параметрами в основной функции. matlab.cpplib.runMain
принимает в качестве входов функцию, которую вы хотите выполнить, образец MATLABApplication
, и входы функции, которую вы хотите выполнить. Он возвращает в качестве вывода код, указывающий на успех или отказ выполнения.
Эта функция используется специально на macOS для выполнения требований Cocoa API. Его можно использовать в Windows® и Linux® платформы также.
std::function<int(std::shared_ptr<MATLABApplication>, int, const char**)> func | A |
std::shared_ptr<MATLABApplication>&& app | Образец |
int argc | Количество входных параметров из командной строки. |
const char **argv | Входные параметры. |
| Код возврата, указывающий на успех (по соглашению: |
MATLABApplication
Объект в runMain
и завершите егоint myMainFunc(std::shared_ptr<mc::MATLABApplication> app, const int argc, const char * argv[]) { try { // initialize library, call feval, etc. } catch(const std::exception & exc) { std::cerr << exc.what() << std::endl; return -1; } return 0; // no error } int main(const int argc, const char * argv[]) { std::vector<std::u16string> options ; auto matlabApplication = mc::initMATLABApplication( mc::MATLABApplicationMode::IN_PROCESS,options); return mc::runMain(myMainFunc, std::move(matlabApplication), argc, argv); }
matlab::cpplib::convertUTF16StringToUTF8String
| matlab::cpplib::convertUTF8StringToUTF16String
| matlab::cpplib::initMATLABApplication
| matlab::cpplib::initMATLABLibrary
| matlab::cpplib::initMATLABLibraryAsync
| matlab::cpplib::MATLABLibrary::feval
| matlab::cpplib::MATLABLibrary::fevalAsync
| matlab::cpplib::MATLABLibrary::waitForFiguresToClose