似乎有幾種方法可以在C++中調用matlab並在matlab中調用C++。雖然我試圖在這裏列出他們,但請指出如果我錯過了一些東西。在C C++和C中的matlab在matlab中的C++
要在MATLAB中調用C++,還有兩種方法。第一個是調用C共享庫中的函數。第二個是將C C++代碼編譯成二進制MEX文件,這些文件將在MATLAB命令行中調用。對於第一種方法,C共享庫是否只是一般的庫,即不改變它們用於matlab的C代碼並從通用C編譯器(如gcc)編譯?
要在C++中調用matlab代碼,有兩種方法可用。第一個是Matlab引擎。第二個是使用MATLAB Compiler mcc從MATLAB代碼創建C或C++共享庫。
除了matlab和C C++可以通過寫入和從某個文件(例如mat文件,文本文件)讀取數據進行通信。
有不止一種方法來實現這裏的每個目標,你能告訴我哪些情況最適合使用它們中的哪一個?即在C共享庫中調用函數VS將C C++代碼編譯爲二進制MEX文件,Matlab引擎VS將Matlab代碼編譯爲C C++共享庫。
感謝和問候!
沒有語言叫做C/C++。 C和X之間的接口將比C++和X之間的接口容易得多。 – 2009-10-16 08:41:24
你知道我的意思,「C和/或C++」 – Tim 2009-10-16 08:43:43
C答案比C++答案短得多(在某些情況下,C++的答案將是「在C中編寫包裝」)。你更關心哪一個? – 2009-10-16 08:47:36