【发布时间】:2013-06-03 23:24:57
【问题描述】:
一旦创建链表的程序在不删除动态内存的情况下关闭,并且我知道需要删除动态内存,那么我如何在重新打开程序后让它恢复工作,如果我无法取回链表那么链表有什么用
【问题讨论】:
-
您认为链表与程序多次运行之间的持久性有什么联系?
-
你可能想看看序列化。
-
程序终止时将删除动态内存。例如,链表的目的是在您不知道需要多少项目的情况下,因此简单的数组将不起作用。
-
肯定会的。当程序终止时,操作系统将为您进行清理。但依赖它并不是一种好的做法。
-
我想在@Sqeaky 的评论中添加一点,虽然在退出之前释放堆内存并不是绝对必要的,但如果您始终以确保(例如使用适当的智能指针类)的方式进行编码,您'当您稍后扩展代码并最终得到一个与以前不同的退出点时,会减少内存泄漏等错误。
标签: c++ c memory-management dynamic linked-list