Matlab是当今世界上使用最为广泛的数学软件,它具有相当强大的数值计算、 数据处理、 系统分析、图形显示,甚至符号运算功能,是一个完整的数学平 台,在这个平台上,你只需 寥寥数语就可以完成十分复杂的功能,大大提高了 工程分析计算的效率。另外由于Matlab的 广泛使用,于是出现了为各个领域专 门使用的工具箱(即在某一研究领域常用数学工具的函数 包),这些工具箱的出现 更加促进了Matlab的流行。 Matlab强大的功能只能在它所提供的平台上才能使用,也就是说,你必需在 安装有mat lab系统的机器上使用.m文件,这样就给工程计算带来了很大不便;特 别是,在matlab中,使 用的行解释方式执行代码,这样大大地限制了代码执行速度。 于是人们想到,能否开发一个 matlab与其他高级语言的接口,这样就可以把matlab 的强大功能融入各种应用程序中,并且 通过高级语言编译器编译为2进制代码, 从而大大提高了执行速度。 于是matlab的5.1版本提供了自带的C++ Complier,同时MathTools公司也为 Matlab开 发了m文件高效解释和调试IDE:MIDEVA。经过近两年的发展,matlab 5.3 中的C complier-- mcc版本已经为2.0,而MIDEVA最新版本为4.5。 将matlab与C混合编程大概有如下三种方法: 1.用Matlab的mcc将.m文件翻译为cpp源文件,然后在C编译器中调用 也可以用mcc编译编 译为stand-alone程序。 2.用Matcom(MIDEVA)将.m文件翻译为cpp代码,并编译为exe或dll 文件。 3.按照matcom的语法,在VC或BCB中直接书写matlab语句(与matlab 很相似),这也是我 最喜欢用的方法。 方法1和2/3各有利弊,1不支持图形(支持图形的库国内现在还没有D), 1对类支持也不 够,2支持绝大多数的matlab语句(包括图形),但对 于struct等的支持也有缺陷。 |
GMT+8, 2025-4-8 04:17 , Processed in 0.069449 second(s), 23 queries , Gzip On.
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.