Как создать массив массивов
От: Аноним  
Дата: 13.10.06 06:53
Оценка:
хотелось бы что нибудь такое но такое не компилиться по причине:

Invalid rank specifier: expected ',' or ']'


int[][,] myArr = new int[5][2,3];
Re: Как создать массив массивов
От: desco США http://v2matveev.blogspot.com
Дата: 13.10.06 06:58
Оценка:
Здравствуйте, Аноним, Вы писали:

А>хотелось бы что нибудь такое но такое не компилиться по причине:


А>

А>Invalid rank specifier: expected ',' or ']'


А>
А>int[][,] myArr = new int[5][2,3];
А>



      int[][,] a = new int[10][,];
      a[0] = new int[10, 20];
      //...
Re: Как создать массив массивов
От: Аноним  
Дата: 13.10.06 06:58
Оценка:
Здравствуйте, Аноним, Вы писали:

А>хотелось бы что нибудь такое но такое не компилиться по причине:


int[][,] myArr = new int[5][,];
for (int i = 0; i < myArr.Length; i++)
{
    myArr[i] = new int[2, 3];
}
Re: Как создать массив массивов
От: Аноним  
Дата: 13.10.06 07:17
Оценка:
Здравствуйте, Аноним, Вы писали:

А>хотелось бы что нибудь такое но такое не компилиться по причине:


А>
А>int[][,] myArr = new int[5][2,3];
А>


Изначально неправильно, надо так:

int[][,] myArr = new int [5] [,];

myArr [0] = new int [1, 2];
myArr [1] = new int [3, 4];
...
myArr [4] = new int [9, 10];
Re: Как создать массив массивов
От: nikov США http://www.linkedin.com/in/nikov
Дата: 13.10.06 07:17
Оценка: 3 (2)
    int[][,] myArr = new int[][,] { new int[2, 3], new int[2, 3], new int[2, 3], new int[2, 3], new int[2, 3] };


Смысл jagged-arrays как раз в том, что вложенные массивы могут иметь разный размер. Поэтому размер каждого элемента надо указывать индивидульно. Иначе можно воспользоваться просто трехмерным массивом.

    int[,,] myArr = new int[5, 2, 3];
Re[2]: Как создать массив массивов
От: Grammer  
Дата: 13.10.06 07:25
Оценка:
Здравствуйте, nikov, Вы писали:

N>
N>    int[][,] myArr = new int[][,] { new int[2, 3], new int[2, 3], new int[2, 3], new int[2, 3], new int[2, 3] };
N>


N>Смысл jagged-arrays как раз в том, что вложенные массивы могут иметь разный размер. Поэтому размер каждого элемента надо указывать индивидульно. Иначе можно воспользоваться просто трехмерным массивом.


N>
N>    int[,,] myArr = new int[5, 2, 3];
N>


спасибо. и как это я сам не понял логики такого запрета
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.