C++运算符重载规则

运算符重载其实是另一种形式的函数调用,这种形式可以给我们类对象赋予各种类似于基本数据类型的运算能力。
C语言中也有运算符的重载,比如说 * 和 &,如果不去思考重载实现的细节与规则,那么这一部分的学习会相当的通俗易懂。但是,看完下边这个表的时候你有没有想过为什么?

                     图1:不同运算符的重载函数类型

这里写图片描述

这里我们先聊一聊重载运算符的基本规则

  • 重载运算符的功能应参照该运算符作用于基本类型数据时候时所实现的功能
  • 用于类对象的运算符一般必须重载,”=“和”&“不必用户重载,系统默认提供
  • 重载不能改变运算符操作数,重载运算符的函数不能有默认的参数
  • 重载后的运算符必须由至少一个参数是用户自定义的类型
  • 重载不能改变运算符的优先级和结核性

不能重载的运算符有:

                      图2:不能重载的运算符

这里写图片描述

然后咱们回到图1:
为什么运算符的重载要采用这么多不同的类型函数?
1,运算符的操作会修改类对象的属性时,必须采用成员函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值