C语言中有析构函数之类的机制吗?或者有其他方法可以实现吗?
我的要求是,当一个程序终止时,所有在运行时分配的内存都应该被释放。我保留了一个使用 malloc
分配的内存列表。
最佳答案
另一种方法是编写内存管理器。
这个想法是内存管理器分配大块内存并将其分成较小的部分以供程序的其余部分使用。当程序终止时,内存管理器可以删除大块。
这是基本思想,尽管内存管理器可能需要更复杂,具体取决于程序的内存使用情况。
在 Doom 源代码中有一个基本的内存管理器,您可以查看:http://doom.wikia.com/wiki/Zone_memory
关于c - 像 C 中的析构函数这样的机制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17288506/