在atexit中释放()

在atexit()函数中释放内存有什么意义吗?

我有一个全局变量,在启动后获取malloc'ed。 我可以编写一个atexit()函数来释放它,但当程序退出时,系统是不是会收回所有内存?

整理和积极清理自己有什么好处吗?


不在C中 - 就像船在你周围下沉时重新安排躺椅。

在C ++中,答案是不同的,因为对象可以在析构函数中删除临时文件等等,所以你需要确保这些文件被调用。


释放它的一个好处是,如果你曾经做过任何内存泄漏测试,试图在流程的整个生命周期内将分配与释放进行匹配,那么不会因这种故意泄漏而导致误报。


在所有现代操作系统中,您可以放心地假定当程序退出时所有内存都将被释放。

链接地址: http://www.djcxy.com/p/19915.html

上一篇: Freeing in an atexit()

下一篇: Override back button to act like home button