matcom是mathtools公司推出的一个能将m文件转化成相同功能c++代码的工具。相比matlab自带的编译器compiler,用matcom转化代码要简单和方便 得多。本文将结合作者编程经验,以vc6.0和matcom为例,详细介绍如何利用matcom进行vc与matlab的联合编程。
matcom安装安装matcom前要已求安装vc6.0。在安装过程中出现选择编译器对话框,选择“是”(图一)。出现选择是否安装matlab时,选“否”。其他选项采用默认设置。matcom可以独立于matlab运行,但需要外部的c++编译器,指定matlab的位置是为了让编译文件中需要的一些系统函数找到路径用的。图一
安装完成后,启动界面mideva(图二)。mideva集成开发环境包括命令行窗口、变量列表窗口、命令列表窗口和编译链接信息窗口等几部分,并有详细的帮助文档。图二
matcom命令输入方法与matlab相同。如果安装在中文版操作系统时,输入命令前加一空格。(如图三)。图三
下面详细介绍如何将m文件编译后放入vc中。 1、启动mideva ,file->new,新建如下test1.m文件: x=1:0.1:10; y=sin(x); plot(x,y); 将文件保存(如图四)。图四
m文件保存的默认位置为:matcom安装目录\matcom45,生成的c++文件保存的默认位置为:matcom安装目录\matcom45\debug\,本例matcom安装目录为c盘 即 c:\matcom45\debug\,在该目录下将会产生test1.h、test1.cpp、test1.r 、test1.obj文件。 2、在vc中用mfc wizard(exe)创建一个基于对话框名为example的工程。 在面板上添加一个id为idc_button1按扭。 3、将c:\matcom45\debug目录下的test1.cpp文件的内容拷贝到void cexamledlg::onbutton1()下,(如图五)。图五
4、将c:\matcom45\lib\下的matlib.h 和v4501v文件和c:\matcom45\debug下的test1.h文件拷贝到工程example目录下,然后在vc中将库文件和头文件加入到工程中:工程->添加工程->files,选择刚刚拷贝到example目录下的matlib.h 、v4501v和test1.h文件(如图六)。图六
5、在examledlg.cpp中加入如下代码: #include "matlib.h"#include "test1.h" 6、在void cexamledlg::onbutton1()中分别添加一个初始化类库调用函数”initm(matcom_version)”和一个结束类库调用函数”exitm()”(如图七)。图七
运行程序,点击画图按扭(如图八)。图八
程序的release版本需要ago4501.dll、v4501v.dll、v4501.lib三个文件的支持。以上只是介绍了vc和matcom接口编程的一个简单例子,功能并不完善,也远远达不到一个软件所要求的水平,但只要熟悉了vc和matcom接口编程的基本原理和方法,相信大家一定能够编出优秀的软件。 下载本源代码Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器