delete NULL是安全的

一直以来都默认删除指针前,都得判断下是否是空指针。直到最近在看More Effective C++
的时候,作者明确指出了C++在语言层次上保证删除空指针是安全的,我才意识到这个问题。
我用vs2013实践了下,发现没有运行错误。所以了,这大概是从学习C语言起遗留下来的思维
定势吧。以前用C调用malloc申请内存的时候,对应的是free释放,free肯定是不能释放NULL指针的,所以
自然而然就觉得delete也不能处理NULL指针。
虽然说,这件事情无伤大雅,但是确实没必要在delete之前判断下是否为NULL了,毕竟自己
判断和编译器判断都是一样的结果,也不存在什么效率问题。