15 мая "Исходники.РУ" отмечают 20-летие присутствия в сети!
Поздравляем всех причастных и неравнодушных с юбилеем сайта!
И огромное спасибо всем, кто был с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Как удалять динамически распределённый многомерный массив

Распределить многомерный массив можно при помощи new следующим образом:

class A
{
public:
  int j;
//...конструктор, деструктор, и т.д.
}

void func()
{
 int m;
 A (*pa)[2][2]=new A[2][2][2]; // трёхмерный массив
 m=pa[0][0][0].j; // первый элемент массива
 m=pa[1][1][1].j; // последний элемент массива
}

Функция func() распределяет трёхмерный массив объектов A с именем pa. Как удалить динамически распределённый массив? Это просто: не имеет значения какой размерности массив, для его удаления всегда надо использовать delete[]:

delete[] pa;