EMCPP条款8:优先选用nullptr,而非0或NULL
0
和 NULL
都是整型字面量,不具备指针类型。nullptr
不觉被整型型别,但其实也不具备指针型别。nullptr
的型别是 std::nullptr_t
,它可以隐式转换为任何指针或成员指针型别。
1 | void f(int); // three overloads of f |
接下来的内容涉及互锁,等对这方面更了解时再更新
要点速记
- 相对于
NULL
和0
,优先选用nullptr
。 - 避免在整型和指针型别之间重载。