#include "matlab.hpp"
#include x.hpp //如果有從.m編譯成.cpp的文件x.hpp 和x.cpp;
在x.cpp中添加#include "StdAfx.h"
3.在matlab中的編譯方法:
用mcc命令轉(zhuǎn)化為c/ C++ 代碼,命令行參數(shù)如下:
生成c文件: mcc –t –L C x.m
生成 C++ 文件: mcc –t –L Cpp x.m
生成動態(tài)鏈接庫函數(shù): mcc –t –W lib:y –T link.lib x.m(y為生成的鏈接文件名)
4.導入鏈接庫:
#pragma comment (lib, "libmatlb.lib")
#pragma comment (lib, "libmx.lib")
#pragma comment (lib, "libmatpm.lib") //
C++
maths library
5.參考代碼如下:
double d[] = { 1, 2, 3, 4 };
mwArray A(2, 2, d);
mwArray arrVal,arrVec;
arrVec = eig(&arrVal,A);
double* a = new double[4];
double* b = new double[4];
for (int i=0; i < 4; i++)
{
a[i] = *(mxGetPr(arrVal.GetData())+i); //正序
b[i] = *(mxGetPr(arrVec.GetData())+i);//逆序
}