class A{
public:
A();
};
class B{
public:
explicit B(int x = 0,bool b = true);
};
void doSomething(B bObject){
//...
};
doSomething(28); //出错。因为doSomething应该接受一个B类型的对象,
//且explicit关键字禁止了隐式的类型转换

class A{
public:
A();
};
class B{
public:
explicit B(int x = 0,bool b = true);
};
void doSomething(B bObject){
//...
};
doSomething(28); //出错。因为doSomething应该接受一个B类型的对象,
//且explicit关键字禁止了隐式的类型转换