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关键字禁止了隐式的类型转换