我想在c#windows应用程序中使用dll。这个DLL期待一个double [] []参数(超过10000个值)和另一个double []参数。将2维数组double [] []传递给c#windows应用程序
public static double[] CalcResults(double[][] Positions, double[] Values)
我不太清楚如何在c#类中声明这个变量。 感谢您的帮助。
我想在c#windows应用程序中使用dll。这个DLL期待一个double [] []参数(超过10000个值)和另一个double []参数。将2维数组double [] []传递给c#windows应用程序
public static double[] CalcResults(double[][] Positions, double[] Values)
我不太清楚如何在c#类中声明这个变量。 感谢您的帮助。
double[][] positions = new double[size1][];
编辑:更好的是,尝试:
double[,] positions = new double[size1, size2];
http://msdn.microsoft.com/en-us/library/2yd9wwz4(v=vs.100).aspx
EDIT2:Doing Arrays - C#示出了锯齿状阵列([] [])和常规双之间的差二维数组([,])。
谢谢@zimdanen。你的回答为我提供了重要的起点。 我初始化变量作为 双[] [] =位置新的双[3] []; 职位[0] =新双[5]; 位置[1] =新双[10]; ,它不会抛出更多的错误。 – ARK 2012-04-26 20:40:20
此DLL是本机DLL还是.NET类库?你试过了什么,发生了什么? – 2012-04-26 18:39:26
我不明白。 double [] []在C#中有效。 – 2012-04-26 18:39:47
我没有多少文件就递给了这个dll。我打开DLL中ILDisassembler,发现头信息是说:元数据版本:V2.0.50727 我收到以下错误消息时,我将值赋给声明为双变量[,]。 最好的重载方法匹配有一些无效参数 参数'1':不能从'double [*,*]'转换为'double [] []' – ARK 2012-04-26 20:21:35