在C++编程中,使用new分配的数组可用delete释放。这里释放的是动态分配的数组空间,而不是静态分配的数组空间,详细步骤:
1、例如,我们动态创建了一个一维int数组arr,现在需要将它释放。
2、这时只需要使用delete[]数组名即可。
3、注意,要释放数组所占的内存,[]不能少。否则,用delete则不能完全释放数组所占内存空间。
4、例如,我们为一个二维数组arr动态分配了内存空间。现在需要将它释放。
5、这时候,单单使用一句delete[]arr是不够的。
6、而是应该先释放为二维数组的每行分配的空间(即delete[]arr[i]),再释放为行指针分配的空间(即delete[]arr)。
7、经过这样两步,动态分配的二维数组空间才算彻底地释放。至于多维数组的释放,其本质和二维数组是相似的,可以参考二维数组的方法。下图为编译运行截图。可以看到,顺利执行,没有非法的内存访问,也没有报错。