MWArray到C#数组没有跳过篮球

时间:2013-11-25 23:33:06

标签: matlab matlab-deployment matlab-compiler

我正在使用MATLAB Builder NE从C#运行一些MATLAB函数。

我有一个MATLAB 1行,从我的包装dll返回的n列向量为MWArray,维度为1,n。

从中获取C#double[]数组的最简单方法是什么?无论我做什么,我似乎得到更多MWArrays

2 个答案:

答案 0 :(得分:3)

这取决于你考虑跳过篮球。我认为您需要转换为MWNumericArrayMWLogicalArrayMWCharArray之一,并使用ToArray方法演示here。假设您有一个名为MWArray的{​​{1}}:

aMW

MWArray class documentation

如Patrick所述,使用ToVector()代替double[,] ad = (double[,]) ((MWNumericArray) aMW).ToArray(MWArrayComponent.Real); 来获取向量而不是2d数组。

答案 1 :(得分:0)

如果使用兼容版本的MWArray,则可以尝试使用我创建的MWArray扩展名nuget package

仅通过通用方法ToArray<T>即可将类型转换为'T'类型的数组。就您而言,double[] result = aMW.ToArray<double>()