0

コード:

  byte[] bytes = new byte[fs.Length];
   var read =  (fs.Read(bytes, 0, Convert.ToInt32(fs.Length)));
   long flength = fs.Length;
   int fSize = int.Parse(flength.ToString());
   MWArray[] in_Arrw = new MWArray[((int)read)];

   MWNumericArray arr = new MWNumericArray(fSize, 1, bytes);

   ChordRecognizer hj = new ChordRecognizer();

   MWArray in_Arr = hj.estimateCost(arr);
   fs.Close();   

私はそれが返すものを得ることができません、in_Arr = hj.estimateCost(arr)私がアクセスしようとすると例外をスローしますin_Arr[0]、画像で見ることができます

助けてください。

クイックウォッチ:

ここに画像の説明を入力してください

ここに画像の説明を入力してください

スタックトレース :

MathWorks.MATLAB.NET.Arrays.MWArray.ArrayIndexer(MWArray srcArray、Int32 [] indexs)at MathWorks.MATLAB.NET.Arrays.MWNumericArray.get_Item(Int32 [] indexs)atMathWorks.MATLAB.NET.Arrays.MWArray。 get_Item(Int32 []インデックス)

4

2 に答える 2

0

投稿した写真から、配列に複数の次元があることがわかります。

これはジャグ配列ではないため、各次元のインデックスを指定しないと (いわば) 配列の項目にアクセスできません。言い換えれば、配列は のようなものYourType[m,n,p]でありYourType[m][n,p]、 の項目にアクセスするには、 1 つだけでなくYourType[m,n,p]3 つのインデックス (例: ) を提供する必要がありますvar item = in_arr[0,0,0];

于 2012-05-17T06:37:41.007 に答える
0

「無効なインデックス例外」が発生しているようです。[0] はオブジェクトにアクセスする正しい方法ではないと思います

于 2012-05-17T05:10:22.580 に答える