7.5.4

来源:互联网 发布:mac的pages怎么保存 编辑:程序博客网 时间:2024/05/20 23:59

7.47
应不应该取决于那种隐式转换是不是你想要的那种
如果转换 和你想的一样,那么不加也许可以代码更简洁一些
如果隐式转换不是你想想要的,那么你要加上explicit

7.48
item1 2 都正常

如果构造函数是explicit的,那么第二个不正常,因为第二个需要一次隐式转换

7.49

(a) Sales_data &combine(Sales_data); //正常(b) Sales_data &combine(Sales_data&); //不对(c) Sales_data &combine(const Sales_data&) const; //不对

7.50

explicit Person(std::istream &is){ read(is, *this); }

7.51

vector<T> (int);vector<T> (10);vector<T> ('a');  //使用explicit是防止类似这种情况出现

但是在string中 我们可以 吗const char*看成是string的。

0 0
原创粉丝点击