C++调用matlab代码

2018-09-06  本文已影响0人  kuizhu

主要通过 mex将matlab代码编译成C/C++动态链接库(dll)

mex -setup
mcc -C -W cpplib:multiTen -T link:lib multiTen.m
%matlab
function [ output_args ] = multiTen()
    num=100;
    output_args=num*10;
end
//c++
#include<iostream>
#include"multiTen.h"
using namespace std;
int main()
{
    bool f=multiTenInitialize();
    cout << f << endl;
    mwArray res;
    multiTen(1, res);
    cout << res << endl;
    cin.get();
    return 0;
}

存在的问题

在vs2015中,生成解决方案后,执行程序会发生内存冲突问题

解决方案

用vs2015生成exe文件后,在命令行中运行,不会导致程序崩溃,目前原因不知道,可能是vs和matlab版本问题
参考链接

上一篇 下一篇

猜你喜欢

热点阅读