例えば、以下のような宣言がありvoidfoo(char*);voidfoo(int);foo(NULL)として呼び出す場合、foo(int)の方が呼ばれることになる。
这样的决定使得函数多载无法区分代码的语意：voidfoo(char*);voidfoo(int);voidfoo(nullptr_t);C++建议NULL应当定义为0，所以foo(NULL);将会呼叫foo(int)，这并不是程序员想要的行为，也违反了代码的直观性。