概述
1.打开VS,新建项目,选择MFC DLL
2.配置项目属性
- C/C++ -> Additional Include Dirrctories 包含目录, 添加MATLAB安装目录下的externinclude路径
- Linker -> General -> Additional Library Directories 库目录, 添加MATLAB安装路径下的externlibwin64microsoft
- Linker -> Input -> Additional Dependencies 附加依赖项,添加libmx.lib;libmex.lib;libmat.lib;
3.创建编辑输出函数
在源文件的路径下新建.def的文件,在文件内写入
EXPORTS mexFunction
在项目属性页的Linker->Input->Module Definition File内加入创建的***.def文件。
另外,更改Configuration Properties->General->Target Extension内容.mexw64
4.编写MEX文件
MEX文件编写要求与MATLAB内的一致。
5.VS编译MEX
编写完成后进行BUILD,没有错误在源码上一级的x64文件夹中的Debugw中会生成MATALB MEX类型的输出文件,可以在MATLAB环境下进行验证。模板如下:
#include "mex.h"
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) {
int iSwitch = mxGetScalar(prhs[0]);
//通过判断prhs[0]传入的参数判断需要做的内容
switch (iSwitch)
{
case 0:
break;
case 1:
break;
case 2:
break;
default:
break;
}
}
6:编译完成后可在matlab中运行验证
同时,如果需要进行mexw64文件的调试,则需要先运行matlab,然后在vs中选择调试->附加到进程中选中matlab,之后在matlab上运行相关的*.m文件即可进入断点。
最后
以上就是爱笑小笼包为你收集整理的VS2017使用C++创建matlab的mexw64库的全部内容,希望文章能够帮你解决VS2017使用C++创建matlab的mexw64库所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复