当前位置: 编程技术>c/c++/嵌入式
C++中Operator类型强制转换成员函数解析
来源: 互联网 发布时间:2014-10-19
本文导语: 类型转换操作符(type conversion operator)是一种特殊的类成员函数,它定义将类类型值转变为其他类型值的转换。转换操作符在类定义体内声明,在保留字 operator 之后跟着转换的目标类型。转换函数又称类型强制转换成员函数,...
类型转换操作符(type conversion operator)是一种特殊的类成员函数,它定义将类类型值转变为其他类型值的转换。转换操作符在类定义体内声明,在保留字 operator 之后跟着转换的目标类型。转换函数又称类型强制转换成员函数,它是类中的一个非静态成员函数。它的定义格式如下:
代码如下:
class
{
public:
operator ();
…
}
这个转换函数定义了由到之间的映射关系。可见,转换函数是用来将一种类型的数据转换成为另一种类型。
1.operator用于类型转换函数:
类型转换函数的特征:
1) 型转换函数定义在源类中;
2) 须由 operator 修饰,函数名称是目标类型名或目标类名;
3) 函数没有参数,没有返回值,但是有return 语句,在return语句中返回目标类型数据或调用目标类的构造函数。
类型转换函数主要有两类:
1) 对象向基本数据类型转换:
代码如下:
#include
#include
using namespace std;
class D{
public:
D(double d):d_(d) {}
operator int() const{
std::cout