我有这样的代码来分配和初始化:C++删除动态矩阵
nw = new int*[V];
for (w = 0; w < V; w++) {
nw[w] = new int[K];
for (k = 0; k < K; k++)
nw[w][k] = 0;
}
,这释放内存:
if (nw) {
for (int w = 0; w < V; w++) {
if (nw[w])
delete nw[w];
}
程序编译和运行,但是,当它尝试释放内存,失败。 程序并不总是以相同的w值失败。
任何想法?
无关:删除空指针没有不良的副作用,所以检查完全是多余的和不必要的。 –
但是如果nw = NULL,是“delete [] nw [w];”安全? – John