我们为什么要在C ++中重载/覆盖new和delete?
举个例子,说明我们应该重载/覆盖new,new [],删除或删除[]。
答案 0 :(得分:2)
这听起来有点像家庭作业。不过,这里有两个用途:
valgrind
来跟踪内存泄漏。allocator
。答案 1 :(得分:0)
提供分配/释放内存的实现。 new / delete非常通用。当您知道应用程序将如何使用内存时,您可以提供更高效的新/删除版本。例如,如果您使用了很多小对象,那将非常简单。
另一种用法是提供内存泄漏检测。
这不是经常使用的机制 - 至少在我的经验中。