如何在C ++中释放这个2D数组?

时间:2014-12-12 19:54:10

标签: c++ arrays pointers memory

如何释放使用此代码分配的2D指针数组:

board = new Node ** [r];

//creates a column for each element in the row
for(int i = 0; i < r; i++) {
    board [i] = new Node * [c];
}

它是一个2D数组指针,对于我目前在析构函数中的内容,它指向board = line ....

Board是一个Node ***,就像它应该的那样。

1 个答案:

答案 0 :(得分:3)

您应该按照分配的相反顺序解除分配:

for(int i = 0; i < r; i++) {
    delete [] board[i];
}

delete [] board;