1)mwArray类
发现matlab自己就带了mwArray等几个类的实现,所以自己根本不需要写矩阵类了。
我这个是测试的matlab6.5 + vc6.0。要想使用这个类,需要在文件首定义:
#define MS_WIN_API
//#include "matlab.h"
#include "matlab.hpp"
库文件 libmatlb.lib libmx.lib libmatpm.lib libmmfile.lib
必须使用mfc才不会出现链接错误
编译时我碰到过一个错误(忘记什么地方了),直接将那个函数注释掉就好了。
下面是一个使用mwArray类的例子
static double data[] = { 1, 2, 3, 4, 5, 6 };
int main(void)
{
// create two matrices
mwArray mat0(2, 3, data);
mwArray mat1(3, 2, data);
// print the matrices
cout << mat0 << endl;
cout << mat1 << endl;
// read the matrix from standard in, the print it to standard out
cout << "Please enter a matrix: " << endl;
cin >> mat1;
cout << mat1 << endl;
return(EXIT_SUCCESS);
}
2)m To cpp
对于已写好的m函数,可以自动生成对应的c或者cpp文件,命令为
mcc -t -L C myfun
mcc -t -L Cpp myfun