explicit 关键字只能用于类内部的构造函数声明上。
在构造函数的实现中不需要再声明explicit
如下例:
上例中的 "A a = 19;" 如果构造函数A(int a)前没有声明称explicit的话 这个将进行隐式转化,用赋值操作符是合法的
所以 如果使用A a = 19; 则编译不会通过, 因为前面声明了explicit 必须显示的进行赋值
explicit 关键字只能用于类内部的构造函数声明上。
在构造函数的实现中不需要再声明explicit
如下例:
上例中的 "A a = 19;" 如果构造函数A(int a)前没有声明称explicit的话 这个将进行隐式转化,用赋值操作符是合法的
所以 如果使用A a = 19; 则编译不会通过, 因为前面声明了explicit 必须显示的进行赋值