在写类的构造函数时, 可能经常就会用到explicit
关键字, 而它的具体作用就是 :
- 只能用来修饰构造函数
- 要求修饰的构造函数必须显示调用
- 禁止隐式转换
具体先来看一个例子:
class ExplicitClass
{
public:
ExplicitClass(int size) : size(size) {
}
ExplicitClass(const char *str) : str(str) {
}
private:
int size;
在写类的构造函数时, 可能经常就会用到explicit
关键字, 而它的具体作用就是 :
具体先来看一个例子:
class ExplicitClass
{
public:
ExplicitClass(int size) : size(size) {
}
ExplicitClass(const char *str) : str(str) {
}
private:
int size;