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);
}
輸出結果如下所示: