1 隐式类类型转换
参考资料[1]P263指出,如果构造函数只接受一个实参,则它实际上定义了转为此类类型的隐式转换机制,因此将此构造函数称作转换构造函数。
class A {
A(int a = 0){} // 只有一个参数,可以将实现int->A的转换
};
void func(A x){} // 接受一个A型实参,由于可以int->A,因此func也可以接受int型实参
int main(void)
{
func(10); // 使用int实参调用func(),将执行默认类型转换int->A(参考资料[1]P264指出,需要用A的地方,都可以使用int替换)
}
参考资料
[1]C++ Primer中文版(第5版)