C++ 提供了关键字 explicit 以在不允许进行此类转换时通过转换构造函数抑制隐式转换。声明为显式的构造函数不能用于隐式转换。在编译器不应使用的单参数构造函数上使用显式关键字来执行隐式转换。
这是有道理的,但是我仍然应该对复制构造函数使用关键字显式吗?在其他什么情况下使用关键字explicit 会有用,为什么?
C++ 提供了关键字 explicit 以在不允许进行此类转换时通过转换构造函数抑制隐式转换。声明为显式的构造函数不能用于隐式转换。在编译器不应使用的单参数构造函数上使用显式关键字来执行隐式转换。
这是有道理的,但是我仍然应该对复制构造函数使用关键字显式吗?在其他什么情况下使用关键字explicit 会有用,为什么?