MathWorks Matcom 4.5 是早期將 MATLAB .m 腳本編譯為 C++ 獨立程式庫的工具。透過 Visual Matcom 增效集整合至 Visual C++ 6.0 IDE,可實現「編寫 MATLAB → 一鍵轉 C++ → VC 專案直接調用」的無縫工作流,大幅降低科學計算模組移植門檻。
usertype.dat 至 VC 安裝目錄 Common\MSDev98\Bin。mvcide.dll(Matcom 安裝目錄 bin 下)。m++ 編譯按鈕)即安裝成功。equation.m% equation.m
function X = equation(A, B)
X = A \ B; % 左除運算求解 A*X = B
Test點擊工具列 m++ 選取 equation.m,無錯誤時專案自動新增:
equation.h / equation.cpp:轉換後的 C++ 函數matlib.h:Matrix 類別定義(矩陣運算核心)equation.mak / equation.r:建構輔助檔test.cpp#include <stdio.h>
#include "matlib.h"
#include "equation.h"
void main() {
initM(MATCOM_VERSION); // 初始化 matlib
Mm a, b, x; // 矩陣物件
a = (BR(1),2,3, semi, 4,5,6, semi, 7,8,1); // 3x3 係數矩陣
b = zeros(3,1); // 3x1 零矩陣
b(1,1)=37; b(2,1)=85; b(3,1)=69; // 常數項
x = equation(a, b); // 呼叫轉換函數
for (int i=1; i<=x.rows(); i++)
for (int j=1; j<=x.cols(); j++)
printf("x(%d,%d)=%f ", i, j, x.r(i,j));
exitM(); // 釋放 matlib
}
輸出:x(1,1)=3.000000 x(2,1)=5.000000 x(3,1)=8.000000,與手算一致。
.m 若非單一函數而是腳本集合,需手動將生成的 .cpp 代碼拷入目標函數。.m 放同目錄,生成的 .h/.cpp 全加入專案。#include "matlib.h" 並在調用前後包裹 initM/exitM。Visual Matcom 讓 MATLAB 原型快速產業化成為可能,是早期科學計算落地 C++ 的經典路徑。