親測實用,不用配置雜七雜八的依賴項
1:新建Win32的DLL輸出項目
2:修改為release模式
3:添加calc.cpp文件,即要導出的函數myadd:
#include "calc.h"
__declspec(dllexport) int myadd(int a,int b)
{
?? ?return a+b;
}
4:添加calc.h文件,注意:一定要約定為C的調用方式,即extern "C" ,否則Matlab會警告:未在庫中找到函數 'myadd'?
#ifdef __cplusplus
extern "C" {
#endif
?? ?__declspec(dllexport) int myadd(int a,int b);
#ifdef __cplusplus
}
#endif?? ?
5:編譯生成.dll文件,然后將calc.h復制到相同目錄下,注意生成的dll路徑為:項目名\x64\Release
6:打開MATLAB,將工作空間定位到dll路徑下,依次執行:
loadlibrary('calc.dll','calc.h');
calllib('calc', 'myadd', 25, 7)
結果如下,成功調用了封裝好的myadd函數: