当前位置: 首页 > 图文教程 > 开发语言 > VC++ > 在VC中使用MATLAB C/C++函数库

VC++
在类VC的界面实现中加入目录树
软件换肤技术在 BCB 中的实现
利用非模窗口生成MDI介面
报表输出轻松搞定
Windows 中不规则窗体的编程实现
解说Win32的窗口子类化
使用测试优先方法开发用户界面
一个简单的登录对话框的实现
一个简单的日记本程序
从资源中加载皮肤
一个在RichEdit中添加表情图象的类
ActiveSkin 4.3 软件换肤在VC中的实现
一种另类“关于(About)”对话框的动态显示方法
对话框打印预览及打印
关于如何换肤、子类化的解决方案
制作 MSN、QQ 的消息提示窗口
如何对 BCGControlBarPro 进行换肤
定制个性化的对话框窗口类
改变窗口中的光标形状
更新MFC中的视图,跟踪.NET Framework中的事件

VC++ 中的 在VC中使用MATLAB C/C++函数库


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 86 ::
收藏到网摘: n/a

在VC中使用MATLAB C/C++函数库
作者: 殷延伟

下载示例代码1
下载示例代码2

MATLAB广泛应用于线性代数、自动控制理论、数理统计、数字信号处理、时间序列分析、动态系统仿真等领域。因此如果在VC中对MATLAB进行调用将大大减少编程的工作量、保证程序的准确性,并且继承了VC++强大的功能,提高开发效率,本文将介绍了在VC中使用MATLAB函数库的具体步骤:

在VC中建立一个项目后:

1.设置:

添加路径:
在project-settings-c/C++-category:-preprocessor-Additional include directories:栏目中添加:
D:\MATLAB6P1\EXTERN\INCLUDE,
D:\MATLAB6P1\EXTERN\INCLUDE\CPP,
D:\MATLAB6P1\EXTERN\LIB lib
在project-settings-c/C++-category:-preprocessor-preprocessor definitions: 栏目中添加:
MSVC,MSWIND
在project-settings-Link-Category-Input-Ignore libraries:栏目中添加:msvcrt.lib

2. 添加头文件:(假设matlab文件为x.m)

#include "matlab.hpp"#include x.hpp //如果有从.m编译成.cpp的文件x.hpp 和x.cpp;
在x.cpp中添加#include "StdAfx.h"

3.在matlab中的编译方法
用mcc命令转化为c/c++代码,命令行参数如下:
生成c文件: mcc –t –L C x.m
生成c++文件: mcc –t –L Cpp x.m
生成动态链接库函数: 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);//逆序}
(完)