C++11增加了nullptr这一空指针常量,以避免函数重载时的调用错误:
#include <iostream>
using namespace std;
void f(int a)
{
cout<<"call f with int param"<<endl;
}
void f(int* a)
{
cout<<"call f with int* param"<<endl;
}
int main(){
f(0); //调用参数为整型的函数版本,输出:call f with int param
f(nullptr); //调用参数为整型指针的函数版本,输出:call f with int* param
return 0;
}