matlab混编C++

本文介绍了如何在MATLAB 2015b环境下配置C++混编环境,并通过实例展示了如何将MATLAB的M文件转换为C++库文件,然后在Visual Studio 2010中创建控制台应用程序调用这些库进行插值运算。重点讨论了mcc、mex和mbuild命令的用途,以及在VS项目中设置库和头文件路径、附加依赖项的方法。
摘要由CSDN通过智能技术生成

最近在看的代码里有一部分是matlab与c++进行混编的,借这个机会学习了一下matlab的混编方法。
众所周知,matlab强大的处理矩阵能力在面临其极慢的执行速度时往往让人十分抓狂,于是就有了matlab与C/C++等混编情况的出现了。

首先声明一下,我的matlab版本是2015b(持续更新),vs是2010(懒得换了)。不过vs的版本对于matlab混编没有影响。

matlab混编常用的命令有三个:mcc、mex、mbuild。
mcc将M文件转换成C/C++文件和相应的MEX包裹文件(需要Matlab编辑器),但在特定条件下可以自动调用mbuild或者mex。
mex将C/C++文件(入口函数为mexfunction())编译成MEX(DLL)文件(需要C/C++编辑器)。
mbuild将C/C++文件(入口函数为main())生成可独立运行的C应用程序(需要C/C++编辑器)。

对于从来没有进行过混编的matlab,要先进行配置matlab混编的环境。

mbuild -setup
mex -setup

配置结束后,我们以插值函数为例看看混编的效果。
matlab的混编有很多情况,个人“将m文件转换为库文件使用”是最简单也是最常见的一种方式。

mcc -W cpplib:my -T link:lib spline.m

-W 指定包装函数类型,cpplib是生成c++库文件;-T指定输出文件的目标阶段 link:lib是把链接文件加到共享库
得到下列文件:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值