Visual Studio调用matlab的二种方式及区别

VS调用matlab的方式有两种:

方式1调用MATLAB引擎

首先,添加头文件 #include "engine.h"

然后,引用函数调用依赖库(lib) libeng.lib libmx.lib libmat.lib,之后就可以调用MATLAB引擎。

方式2调用MATLAB生成的dll

调用MATLAB生成的DLL是一种比较通用的方法,这样每次使用时只需调用这个模块就可以了。

(1)首先确认MATLAB已经完成VS配置、系统环境变量配置以及MATLAB编译器配置。

(2)将需要MATLAB完成的功能做成一个MATLAB函数。

(3)利用mcc命令编译,得到h、dll、lib等文件,在C/C++工程中只需加入上述文件即可。

(4)新建工程调用所得文件。

方式1无论是开发还是运行都必须安装完整版matlab,对VS的版本没有严格要求,相当于直接引用matlab的dll和lib,比如VS2013可以调用matlab2010a

方式2需要利用matlab的VS编译器将代码文件生成dll和lib,因此,对VS版本要求严格,必须是matlab版本支持的VS版本,VS的版本比matlab低。开发要用到完整版matlab,但是运行只需要matlab runtime即可。matlab的runtime比较大,matlab2010a runtime是100多M,matlab2014a runtime 600多M,但是比起它的matlab来说还是小多了。

参考文献

vs2013 & Matlab 2018 (64)混合编程_matlab2018b 支持vs2013mex-CSDN博客C语言调用matlab引擎和调用matlab生成的DLL文件-CSDN博客https://www.cnblogs.com/zhchngzng/p/4131035.html

Matlab发布程序出错:Test checkout of feature 'Compiler' failed 解决方式_test checkout of feature 'compiler' failed.-CSDN博客

相关推荐
曹勖之13 小时前
UE 5 和simulink联合仿真,如果先在UE5这一端结束Play,过一段时间以后**Unreal Engine 5** 中会出现显存不足错误
matlab·ue5·机器人
曹勖之16 小时前
simulink有无现成模块可以实现将三个分开的输入合并为一个[1*3]的行向量输出?
matlab
敲敲敲-敲代码16 小时前
【Visual Studio 2022】卸载安装,ASP.NET
ide·visual studio
Ll130452529818 小时前
JsonCpp 库如何集成到Visual studio
ide·visual studio
新兴AI民工20 小时前
windows上的visual studio2022的项目使用jenkins自动打包
windows·jenkins·visual studio
WarPigs20 小时前
Visual Studio问题记录
ide·windows·visual studio
机器学习之心1 天前
Transformer-BiGRU多变量时序预测(Matlab完整源码和数据)
深度学习·matlab·transformer·bigru
Eiceblue1 天前
C# 快速检测 PDF 是否加密,并验证正确密码
开发语言·pdf·c#·visual studio
新知图书1 天前
下载和安装Visual Studio(开发ASP.NET MVC应用)
ide·asp.net·visual studio
slandarer1 天前
MATLAB | 绘图复刻(十九)| 轻松拿捏 Nature Communications 绘图
开发语言·matlab