?? mathtools590.txt
字號:
發信人: FangQ (木頭蟲子), 信區: MathTools
標 題: Matlab與C++接口與混合編程討論小結(一)
發信站: BBS 水木清華站 (Tue Nov 2 22:24:43 1999)
第一章、概述
Matlab是當今世界上使用最為廣泛的數學軟件,它具有相當強大的數值計算、
數據處理、系統分析、圖形顯示,甚至符號運算功能,是一個完整的數學平
臺,在這個平臺上,你只需寥寥數語就可以完成十分復雜的功能,大大提高了
工程分析計算的效率。另外由于Matlab的廣泛使用,于是出現了為各個領域專
門使用的工具箱(即在某一研究領域常用數學工具的函數包),這些工具箱的出現
更加促進了Matlab的流行。
Matlab強大的功能只能在它所提供的平臺上才能使用,也就是說,你必需在
安裝有matlab系統的機器上使用.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等的支持也有缺陷。
--
這 是 最 后 的 斗 爭
THIS IS THE FINAL CONFLICT
※ 來源:·BBS 水木清華站 bbs.net.tsinghua.edu.cn·[FROM: 202.115.15.64]
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -