总结:nullptr转换为bool,bool转换为int,为什么不nullptr转换为int?
这段代码没问题:
void f(bool);
f(nullptr); // fine, nullptr converts to bool
Run Code Online (Sandbox Code Playgroud)
这没关系:
bool b;
int i(b); // fine, bool converts to int
Run Code Online (Sandbox Code Playgroud)
那么为什么这不行呢?
void f(int);
f(nullptr); // why not convert nullptr to bool, then bool to int?
Run Code Online (Sandbox Code Playgroud)