使用nullptr
取代NULL
原因:NULL
其實是 0 也就是int
,但是nullptr
是被定義用來當作指標。
void fn(int);
void fn(void*);
fn(123); // call fn(int)
fn(0); // call fn(int)
fn(NULL); // call fn(int),有的 compiler 會 error
fn(nullptr); // call fn(void*)
Reference
- Effective Modern C++: item8: Prefer nullptr to 0 and NULL
- C++ Core Guidelines: Use
nullptr
rather than0
orNULL