C++11增加了nullptr空指针,以前我们常用NULL代表空指针,但是会存在问题,大家都知道NULL其实是一个宏定义,大多数是被定义成0。通过以下代码可以看出NULL和nullptr的区别。
struct Work
{
void DoWork(int obj)
{
cout << "DoWork 1" << endl;
}
void DoWork(int * obj)
{
cout << "DoWork 2" << endl;
}
};
int main(int argc, char** argv)
{
Work _w;
_w.DoWork(NULL);
_w.DoWork(nullptr);
}
输出结果如下所示: