按这个链接下载安装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