手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

如何释放动态创建的数组

时间:2024-10-12 22:37:06

在C++编程中,使用new分配的数组可用delete释放。不过,和动态创建的一维数盲褓梆尺组相比,动态创建的二维数组空间的释放却略有不同,也更容易出错。

一、释放动态创建的一维数组空间

1、例如,我们动态创建了一个一维 int 数组 arr,现在需要将它释放。

如何释放动态创建的数组

2、这时只需要使用 delete[ ] 数组名 即可。

如何释放动态创建的数组

3、注意,要释放数组所占的内存,[ ]不能少。否则, 用 delete 则不能完全释放数组所占内存空间。

如何释放动态创建的数组

二、释放动态创建的二维数组空间

1、例如,我们为一个二维数组 arr 动态分配了内存空间。现在需要将它释放。

如何释放动态创建的数组

2、这时候,单单使用一句 delete[ ] arr 是不够的。

如何释放动态创建的数组

3、而是应该先释放为二维数组的每行分配的空间(即 delete[ ] arr[i]),再释放为行指针分配的空间(即 delete[ ] arr)。

如何释放动态创建的数组

4、经过这样两步,动态分配的二维数组空间才算彻底地释放。至于多维数组的释放,其本质和二维数组是相似的,可以参考二维数组的方法。下图为编译运行截图。可以看到,顺利执行,没有非法的内存访问,也没有报错。

如何释放动态创建的数组
© 手抄报圈