たとえば、可変長の整数配列の配列。 n == 3
が、結果は整数の配列への3つのポインタの配列となり、このように表示されるならば、この場合、C#.NETで非固定マルチデメション配列を実装する最善の方法は何ですか?
int * * TwoDimAry = new int * [n] ;
for (int i (0) ; i < n ; i ++)
{
TwoDimAry[i] = new int [i + n] ;
}
:
C++で、我々は次のようなことをやってするために使用されている
もちろんhttp://img263.imageshack.us/img263/4149/multidimarray.png
、.NETアレイは、コレクションを管理しているので、あなたは手動割り当て/削除に対処する必要はありません。
しかし宣言する:
int[][] TwoDimAry ;
を... C#では、同じ効果を持っているように見えていない - つまり、あなたが同時にサブアレイのすべてをinnitializeしなければならない、と彼らはする必要が同じ長さ
私のサブ配列はネイティブのC++であるため、それぞれのサブ配列が独立している必要があります。
管理コレクションを使用してこれを実装する最善の方法は何ですか?私が知っておくべき欠点はありますか?
ジグザグ配列( 'int [] []'構文)を宣言すると、サブ配列のサイズが異なることがあります。多次元配列( 'int [、]'構文)を宣言すると、サブ配列の長さは同じになります。 –