在Matlab與C#混合編程中,如何實現數組傳遞是一個重要的問題,下面介紹一下數組傳值方法
首先要引用MWArray.dll(添加引用--〉瀏覽--〉C:\Program Files\MATLAB\R2012b\toolbox\dotnetbuilder\bin\win32\v2.0\mwarray.dll)
之後使用其中的MWNumericArray類進行強制類型轉換,示例如下:
double[] x = new double[5];
double[] y = new double[5];
for (int i = 0; i < 5; i++)
{
x[i] = i;
}
y[0] = y[4] = 2; y[1] = y[3] = 1; y[2] = 3;
MWNumericArray a = new MWNumericArray(1, 5, x);//int row,int column,double[] real
MWNumericArray b = new MWNumericArray(1, 5, y);
MWArray res = mat.calculateAllDistance(a,b);
Console.WriteLine("distanceall=" + res);