c++调用MATLAB engine无法调用到自定义MATLAB函数c++调用MATLAB simulink文件.mdl.slx使用引擎

问题

最近使用c++调用MATLAB的算法时,算法使用了simulink的文件方式,调用mdl文件或者slx文件。结果通过将MATLAB转换为c++库的方式不能调到mdl文件,无法正常执行结果。故而改为使用MATLAB engine的方式调用,这种调用需要使用m文件源码。

而m文件中是自定义函数,这里就是要调用这个自定义的MATLAB函数。

解决方案

至于引擎的调用方法已经有很多,这里就不做描述。这里只是描述怎么让引擎找到这个自定义的m文件中的函数。

那么就是下面这句话

QString addPath_ = QString("addpath(genpath('%1'));").arg(path_ matlab)

其中,path_matlab为自定义m文件所在的目录路径

上面这句话的意思就是添加目录及子目录到搜索路径。这样engine就能找到自定义的函数了。

engine就是类似于将一行行的命令用字符串的形式在c++中组装好,再传给引擎调用。引擎执行后,结果存在了指定的地方,再获取结果,就OK啦。

编辑:myhappyandy

相关推荐
流年如夢12 小时前
初入C++
开发语言·c++
yoyo_zzm12 小时前
编程语言大比拼:C++到PHP全解析
开发语言·c++·php
努力努力再努力wz13 小时前
【C++高阶数据结构系列】:时间轮定时器详解:原理分析与代码实现,带你从零手撕时间轮!(附时间轮的实现源码)
c语言·开发语言·数据结构·c++·qt·算法·ui
水饺编程13 小时前
编程基础:令牌粘贴指令,【##】
c语言·c++·windows·visual studio
basketball61613 小时前
C 的 malloc/free 与 C++ 的 new/delete 一些区别
c语言·开发语言·c++
mmz120713 小时前
广搜题目练习(c++)
c++·算法
郝学胜-神的一滴13 小时前
Qt 高级开发 006: 架构全解 + 高效学习指南
开发语言·c++·qt·程序人生·架构
Vodka~13 小时前
一根网线——Windows共享网络给Linux访问互联网
linux·网络·windows
森叶13 小时前
Windows 下从 Chromium/V8 源码编译 V8 10.8.168.25
windows
我命由我1234513 小时前
Visual Studio - Visual Studio 注释快捷键
java·c语言·开发语言·c++·ide·java-ee·visual studio