使用mexCallMATLAB(nlhs, plhs, nrhs, prhs, "foo")
命令我們可以調用一個函數(這裏是「foo.m」),這個函數是在C++中用MATLAB編寫的。如何從C++調用matlab成員函數?
但是如果「foo」是一個類的方法呢?
classdef Foo < handle
...
function out = foo(obj, in)
...
end
end
從C++調用MATLAB類成員函數是否有任何直接或技巧?
我想你問什麼[在R2017b加](https://www.mathworks.com/help/matlab/release-notes.html?rntext=&startrelease=R2017b&endrelease=R2017b&category=Advanced+Software+Development ),幾周前發佈。請查看[本文檔頁面](https://www.mathworks.com/help/matlab/calling-matlab-engine-from-cpp-programs.html)。 –
@ Dev-iL謝謝。我檢查並遵循[鏈接](https://www.mathworks.com/help/matlab/matlab_external/call-matlab-functions-from-c-1.html)頁面。但是沒有功能可以調用成員函數。此外,我用'mex'來創建一個包裝器和新的問題:'mex'和'matlab :: engine'有什麼區別(優缺點)? –
不幸的是,我不能幫你,因爲我完全不熟悉整個「[其他語言的MATLAB API](https://www.mathworks.com/help/matlab/programming-interfaces-for-external-languages.html )「... –