Alo*_*iel 5 c++ pointers delete-operator
我定义了:
A** mat = new A*[2];
Run Code Online (Sandbox Code Playgroud)
但我怎么能删除它?用delete[] mat;或delete[] *mat;?
这是delete[] mat;当你不做额外拨款只.但是,如果您在数组数组中分配了数组,则还需要删除它们:
A** mat = new A*[2];
for (int i = 0 ; i != 2 ; i++) {
mat[i] = new A[5*(i+3)];
}
...
for (int i = 0 ; i != 2 ; i++) {
delete[] mat[i];
}
delete[] mat;
Run Code Online (Sandbox Code Playgroud)