内存的申请和释放,C++从语言级别提供了new和delete关键字,因此需要了解和熟悉其中的过程。
set_new_handler可以指定一个函数,当申请内存失败时调用,如果调用指定的函数后,内存还是不够,就会循环调用
定制new和delete是有必要的
operator new应该内含一个无穷循环,并在循环中尝试分配内存,如果无法满足就需要调用new-handler(里面的操作可能释放内存),且有能力处理0字节的申请
operator delete的入参为NULL时,不做任何处理
任何情况下new和delete都需要成对出现
记住一句话:现在忽略的告警,就是你将来通宵的伏笔
直接撸源码,你将受益无穷
多阅读开源代码,只有好处没有坏处