类型转换运算符
类型转换函数负责将一个类类型转换成其他类型。典型的一个例子是将cin >> x
作为循环的条件,就是将一个istream
对象转换成了bool
类型。基本形式如下
operator type() const;
类型转换运算符通常是隐式执行,容易引发错误,最好将其定义成显式的。
class A{
public:
explicit operator int() const {return val;}
private:
int val;
};
类型转换函数负责将一个类类型转换成其他类型。典型的一个例子是将cin >> x
作为循环的条件,就是将一个istream
对象转换成了bool
类型。基本形式如下
operator type() const;
类型转换运算符通常是隐式执行,容易引发错误,最好将其定义成显式的。
class A{
public:
explicit operator int() const {return val;}
private:
int val;
};