1
我有一個調用matlab函數的小代碼片段(保存在它自己的.m文件中)。用戶可以選擇要調用的matlab函數,它可能也可能不在MATLAB的默認文件夾(〜/ Documents/MATLAB)中。從C++調用Matlab函數
如果它不在默認搜索路徑中,我想將該函數的包含文件夾添加到MATLAB的搜索路徑中。當我嘗試這樣做使用終端(我是在MAC),用這個命令:
/Applications/MATLAB_R2011b.app/bin/matlab -r "addpath(genpath('/Folder/Address/Here'))"
MATLAB的推出,我可以看到,新的地址已成功添加到搜索路徑。
然而,當我嘗試運行使用這種通過C++程序的命令:
std::string matlabFunctionPath = "/Folder/Address/Here"
std::string addPathCommand = "/Applications/MATLAB_R2011b.app/bin/matlab -r \"addpath(genpath('"+ matlabFunctionPath + "')\"";
::popen(shellCommand.c_str(), "r"));
MATLAB不會推出,但新的地址不會被添加到搜索路徑。我在這裏做錯了什麼?
我很感激幫助。