13. 重载类本身的operator new/delete
1 | using namespace std; |

14. 本质就是重载new
new是关键字,编译器看到new,会转换成operator new的调用。



15. 重载new()/delete()


16. 关于多参new对应的delete

上面重载了参数不一的
operator new(),那是不是要重载对应的operator delete()呢?理论上
delete的工作只是为了释放内存,所以只需要一个指针就可以了,但C++在语法上支持多参的delete重载,但delete的调用格式只有delete ptr,所以关于重载的delete版本什么时候被调用,并不是用户手动调用,而是对应版本的Ctor发生异常后,会由crt来调用对应的delete。
17. basic_string使用new(extra)扩充申请量

18. new_handler



