重载operator new,当size==0时的处理
我很早以前写了一套内存分配的代码今天终于出问题了.
因为我没有在 operator new 里处理 size==0 的情况 :(
而 stl 里出现了 new(0).
真应该早点看 effctive c++ ;)
不过 effctive c++ 里简单的把 size==0 的情况当 size=1 处理.
当然这没有问题.
只是, 我觉得, 当需要分配 0 byte 的时候, 直接返回 NULL 似乎也没有错.
因为那个指针是不能写的呀.
请问, 如果我直接在请求 0 byte 时候, 返回 NULL, 有没有什么隐患呢?