2012-04-26 11 views
0

c#windowsアプリケーションでdllを使用しようとしています。このdllはdouble [] []パラメータ(10000以上の値)と別のdouble []パラメータを期待しています。2次元配列double [] []をc#windowsアプリケーションに渡す

public static double[] CalcResults(double[][] Positions, double[] Values) 

私はこの変数をC#クラスでどのように宣言するのかよくわかりません。 あなたのお手伝いをよろしくお願いします。

+1

このDLLはネイティブDLLか.NETクラスライブラリですか?何を試しましたか?何が起こったのですか? –

+1

私は分かりません。 double [] []はC#で有効です。 –

+0

私は多くのドキュメンテーションなしでこのdllを手渡しました。私はILDisassemblerにdllをオープンし、ヘッダ情報が見つかりました。メタデータバージョン:v2.0.50727 double [、]と宣言された変数に値を代入すると、次のエラーメッセージが表示されます。 いくつかの無効な引数があるため、最もオーバーロードされたメソッドに一致しています 引数 '1': 'double [*、*]'から 'double [] []'に変換できません – ARK

答えて

4
double[][] positions = new double[size1][]; 

編集

double[,] positions = new double[size1, size2]; 

http://msdn.microsoft.com/en-us/library/2yd9wwz4(v=vs.100).aspx

EDIT2Doing Arrays - C#はギザギザアレイ([] [])と正規二の違いを示しいっそ、これを試します2次元配列([、])です。

+0

Thanks @zimdanen。あなたの答えは私に必須の出発点を与えました。 変数を次のように初期化しました double [] [] positions = new double [3] []; ポジション[0] =新しいダブル[5]; ポジション[1] =新しいダブル[10]; これ以上エラーは発生しません。 – ARK