Двумерный динамический массив в Делфи можно создать следующим образом:
var
M: array of array of real;
//..........................
//Выделяем для него память
SetLength(M,5,5);
//Получается массив [0..4,0..4], индексация всегда с 0
//Работаем с массивом как обычно
M[2,3]:=2.18;
//...........................
//Освобождаем память
M:=NIL;
В отличии от обычного массива, который всегда будет прямоугольным, можно создавать так называемыіе нерегулярные масиивы со сложной размерностью. В этом случае можно выделять память так:
SetLength(M,5);
SetLength(M[0],4);
SetLength(M[1],1);
SetLength(M[2],3);
SetLength(M[3],2);
SetLength(M[4],5);
В результате структура массива будет такой, как показано на схеме ниже:
* * * *
*
* * *
* *
* * * * *
Например, элемента M[1,1] не существует (индексация с начинается с 0).
2011-10-28 • Просмотров [ 8206 ]