Например: массив целочисленных массивов переменной длины.
В C ++ мы привыкли делать что-то вроде:
int * * TwoDimAry = new int * [n] ;
for ( int i ( 0 ) ; i < n ; i ++ )
{
TwoDimAry[i] = new int [i + n] ;
}
В этом случае, если n == 3
тогда результатом будет массив из трех указателей на массивы целых чисел, который будет выглядеть следующим образом:
http://img263.imageshack.us/img263/4149/multidimarray.png
Конечно, массивы .NET являются управляемыми коллекциями, поэтомуне приходится иметь дело с ручным выделением / удалением.
Но объявление:
int[][] TwoDimAry ;
... в C #, похоже, не дает того же эффекта - а именно, вы должны инициализировать ВСЕвложенных массивов в одно и то же время, и они должны быть одинаковой длины.
Мне нужно, чтобы мои вложенные массивы были независимы друг от друга, как они есть в собственном C ++.
Какой лучший способ реализовать это с помощью управляемых коллекций?Есть ли какие-то недостатки, о которых я должен знать?