如何通过日期类示例精通运算符重载技巧?
- 内容介绍
- 文章标签
- 相关推荐
本文共计4327个文字,预计阅读时间需要18分钟。
一、运算符重载为了增强C++代码的可读性,引入了运算符重载机制。运算符重载允许使用熟悉的运算符来执行自定义操作。
运算符重载的特点包括:- 具有特殊函数名,如 `operator+`、`operator-` 等。- 返回值类型为运算符执行的结果类型。- 函数名由运算符前加上 `operator` 关键字构成。- 参数列表包含操作数,如 `operator+(int, int)`。- 返回值类型与操作数类型一致或可以自动转换。
一、运算符重载
1.1运算符重载
C++为了增强代码的可读性引入了运算符重载,运算符重载是具有特殊函数名的函数,也具有其返回值类型,函数名字以及参数列表,其返回值类型与参数列表与普通的函数类似。
关键字: operator后面接需要重载的运算符符号
函数的原型: 返回值类型 operator 操作符(参数列表)
注意:
- 不能通过连接其他符号来创建新的操作符:比如operator@
- 重载操作符必须有一个类类型参数
- 用于内置类型的运算符,其含义不能改变,例如:内置的整型+,不 能改变其含义
- 作为类成员函数重载时,其形参看起来比操作数数目少1,因为成员函数的第一个参数为隐藏的this
- .* :: sizeof ?: . 注意以上5个运算符不能重载。
本文共计4327个文字,预计阅读时间需要18分钟。
一、运算符重载为了增强C++代码的可读性,引入了运算符重载机制。运算符重载允许使用熟悉的运算符来执行自定义操作。
运算符重载的特点包括:- 具有特殊函数名,如 `operator+`、`operator-` 等。- 返回值类型为运算符执行的结果类型。- 函数名由运算符前加上 `operator` 关键字构成。- 参数列表包含操作数,如 `operator+(int, int)`。- 返回值类型与操作数类型一致或可以自动转换。
一、运算符重载
1.1运算符重载
C++为了增强代码的可读性引入了运算符重载,运算符重载是具有特殊函数名的函数,也具有其返回值类型,函数名字以及参数列表,其返回值类型与参数列表与普通的函数类似。
关键字: operator后面接需要重载的运算符符号
函数的原型: 返回值类型 operator 操作符(参数列表)
注意:
- 不能通过连接其他符号来创建新的操作符:比如operator@
- 重载操作符必须有一个类类型参数
- 用于内置类型的运算符,其含义不能改变,例如:内置的整型+,不 能改变其含义
- 作为类成员函数重载时,其形参看起来比操作数数目少1,因为成员函数的第一个参数为隐藏的this
- .* :: sizeof ?: . 注意以上5个运算符不能重载。

