C++11 NULL与nullptr

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);
}

输出结果如下所示:

C++11 NULL与nullptr_第1张图片

你可能感兴趣的:(c++,11新特性,NULL,nullptr,空指针)