【发布时间】:2021-06-06 16:13:44
【问题描述】:
如果我在执行期间分配了一些内存但从未调用delete 并且程序终止会发生什么?操作系统会释放我分配的所有内存并且不会“浪费”任何内存吗?或者在计算机重新启动之前我会丢失一部分内存吗?
显然,我知道良好的编码习惯是确保删除不需要的内容,所以我不只是问“delete 有什么意义”;我只是想知道我的 RAM 中发生了什么。
【问题讨论】:
-
释放内存以便操作系统可以再次使用它。当您的程序终止时,所有内存将被自动释放,但是,它值得释放,因此在您的进程的生命周期内使用内存以保持它具有较低的内存占用。
-
谢谢,这正是我认为发生的事情。
-
一个问题,你应该......忘记它。只是...新建和删除。总是。总是!总是!
-
是的,请再次阅读问题。我已经说过我知道了。
-
我只是放在这里:what if...
标签: c++ memory-management