按這個鏈接下載安裝https://blog.csdn.net/zhanshen112/article/details/79484031
出現上面的圖,說明安裝成功!
下面就可以運行程序了
編寫helloworld程序,是基於類編寫的
//保存爲hw.cpp
#include "mex.h"
#include"HelloWorld.h"
//主程序
void mexFunction(int nlh,mxArray*plhs[],int nrhs,const mxArray*prhs[])
{
HelloWorld hw;//創建HelloWorld 對象
mexPrintf("Hello world");
}
//保存爲HelloWorld.h頭文件
#ifndef _HELLO_WORLD
#define _HELLO_WORLD
#include"mex.h"
//頭文件
class HelloWorld
{
public:
HelloWorld(void);
~HelloWorld(void);
public:
void Print();
};
#endif // _HELLO_WORLD
//保存Hello World.cpp文件
#include"HelloWorld.h"
//導入頭文件
HelloWorld::HelloWorld(void)
{
}
void HelloWorld::Print()
{
mexPrintf("Hello World!\n");
}
HelloWorld::~HelloWorld(void)
{
}
上面編寫好的程序是用C++編寫MEX文件的源代碼,必須創建mexFunction這個函數,類似c++中的main函數,此外必須導入mex.h頭文件。
下面是我用matlab調用上面程序的過程:
1.首先matlab打開上述編寫c++程序的文件夾
2.輸入語句mex hw.cpp HelloWorld.cpp,編譯完成hw.mexw64
3.在matlab 中調用上面的c++函數,輸出hello world