class B{public: explicit B(int x= 0,bool b = true);}void doSomething(B obj) B obj; doSomething(obj) //没有问题 doSomething(28) //有问题,doSomething入参应该是B类类型,不是int类型,从int类型到B类型之前的隐式转换被禁止; doSomething(B(28)) //没有问题,使用B构造函数将int显示转换为一个B类型