运算符的重载

运算符的重载就是给一般的运算符定义一个函数,函数名为operator=,operator+等,参数的个数根据是全局函数还是类中的成员函数而有所区别。

在类中的运算符函数,对于二元运算符,单个的参数是出现在运算符右侧的那一个。

虽然C++语法可以重载几乎所以C中可用的运算符,但有几个小规则需要遵守:

1、不能做无意义的重载,如把'+'重载成减法的含义等

2、不能改变运算符的优先级

3、不能改变运算符的参数个数

下面开始介绍几个常用的重载的运算符:

一元运算符:

+

-

~

&

!

++

--

二元运算符:

+

-

*

/

%

^

&

|

<<

>>

+=

-=

*=

/=

%=

^=

&=

|=

<<=

>>=

==

!=

>

<

>=

<=

&&

||

在这其中需要注意的是++和--运算符,由于有前置和后置的区别,如果是++a,就会调用operator(a),而如果是a++则会调用operator(a,int);利用参数的不同来实现不同的调用。

不能重载的运算符:

.

.*

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值