C++空指针

57 阅读1分钟
  • 在C++98中,字⾯值0有两个含义:可以表⽰数字值零,也可以表⽰空指针,这使得阅读 程序的⼈和编译器难以区分。
  • 有些程序员使⽤(void *) 0来标识空指针(空指针本⾝的内部 表⽰可能不是零),还有些程序员使⽤NULL,这是⼀个表⽰空指针的C语⾔宏。
  • C++11提供了 更好的解决⽅案:引⼊新关键字nullptr,⽤于表⽰空指针。您仍可像以前⼀样使⽤0——否则 ⼤量现有的代码将⾮法,但建议您使⽤nullptr:
str=nullptr;