***************************************************
更多精彩,欢迎进入:http://shop115376623.taobao.com
***************************************************
http://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-9510581626.24.ZO6sko&id=43401674106
精通MATLAB混合编程视频讲解
MATLAB各类函数视频讲解
基于MATLAB的高等数学问题求解
MATLAB函数速查视频讲解
面向对象C++视频教程
精通MATLAB混编编程demo及PDF
QQ:2911984429
http://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-9510581626.24.ZO6sko&id=43401674106
详细见上传图片
1、创建一个win32 DLL空项目
项目属性里 c++下的常规附加包含目录 加入matlab下安装目录下\extern\include
链接器->附加库目录加入\extern\lib\win32\microsoft
连接器->附加依赖项输入 libmx.lib libeng.lib libmat.lib libmex.lib
(如果是64为系统,则再相应包含64位的目录,并且在连接器->高级->目标计算机设置成machineX64,
生产->配置管理器->平台改为x64,)【见下图右上角“配置管理器”】
在链接器的输出文件里改成 $(OutDir)$(TargetName).mexw32(64位系统相应改成64)
2) 添加源文件
示例:
#include "mex.h"
void mexFunction(int nlhs,mxArray *plhs[],int nrhs,const mxArray *prhs[])
{
mexPrintf("Hello,world!\n");
}
添加def文件
代码:
LIBRARY
EXPORTS mexFunction
3)生产解决方案
即会生产一个mexw32文件
4)调试
将matlab的current folder 设置成mexw32文件所在的路径
vs2010-调试-附加到线程-选择matlab
(图中已经附加,故显示为灰色)
源代码里设置断点
matlab下输入代码或者函数(即mexw32文件的文件名),即会跳转到vs的断点处。
ps:在调试的时候 matlab会处于假死的状态,不能点击,不能移动,不知为什么。就算用官员的例子也一样。