当前位置导航:炫浪网>>网络学院>>编程开发>>C++教程>>Visual C++教程

Visual C++.net 2003 与Matcom4.5混合编程

    目前关于vc++与Matcom4.5混合编程的文档均为Visual C++ 6.0的,而Visual C++.net 2003与Visual C++ 6.0在设置上有一定的区别,因此本文总结了在编程过程中对Visual C++.net 2003的设置过程做了一个总结,希望对大家有一定的参考价值。

    Matcom4.5的安装

    1.1安装之前,首先在matlab的安装目录下建立文件夹:\bin\toolbox\matlab\general.(此步不需工——Eric)Matcom4.5在安装时需要你输入口令,Matcom4.5的口令为FREE-4.5-1193046-80295111.

    1.2安装完成后,mideva在window的注册表中HKEY_CURRENT_USER\Software\MathTools\Matcom\4.50\License\下面添加一个键,键名默认,键值为FREE-4.5-1193046-80295111.(此步也不需要——Eric)你如果删除它,再次启动matcom的时候,就会再次询问口令。不过好在如果通过这个口令之后,程序发布时就不再有限制了,也就是在这个注册后的系统中编译的程序,发布时就不用代一个注册文件了。

    1.3第一次运行时,MATcom4.5自动搜索VC编译器并提示用户是否安装,之后提示是否安装有MATLAB,回答安装后,如果没有建立文件夹\MATLAB701\bin\toolbox\matlab\general,则发生错误。手动建立文件夹,再重新启动MATcom4.5即可。

    (2)Visual C.net 2003环境设置。

    在Visual C.net 2003中的"工具/选项/项目/vc++目录中

    包含文件-》,添加Matcom4.5安装目录中matlab.h的路径

    库文件-》添加Matcom4.5安装目录中v4501v.lib的路径

    (3)修改vc.net源代码。

    3.1 建立一个mfc单文档工程如“test”

    3.2在stdafx.h中添加

    #include "matlib.h"

    3.3在CtestView.h类声明中

    protected:下添加

    bool init;

    3.4CtestView.cpp

    的构造函数添加如下代码

 CtestView::CtestView()

{

// TODO: 在此处添加构造代码

init=false;

}
CtestView::CtestView()

{

// TODO: 在此处添加构造代码

init=false;

}

在其成员函数OnDraw中添加如下代码

if (!init) {

initM(MATCOM_VERSION);

Mm h = winaxes(m_hWnd);

//------------实例程序可自行添加代码―――――――――――

axesposition(10,10,300,180);

plot((CL(magic(20+40*rand()))));

title((CL(TM("Random plot"))));

xlabel((CL(TM("This is the x axis"))));

ylabel((CL(TM("This is the y axis"))));

set(h,(CL(TM("Color")),TM("white")));

set(h,(CL(TM("Box")),TM("on")));

//------------―――――――――――――――



init=true;

}

drawnow();

    结束 

    这样一个简单的Visual C++.net 2003 与Matcom4.5混合编程的框架就大好了,由于本人只是有限,难免有不足之处,欢迎讨论。
相关内容
赞助商链接