Matlab和C#混合編程之數組傳值

在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;

            matlabfunction.matlabfunction mat = new matlabfunction.matlabfunction();
           
            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);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章