这里简单说一下运算符重载需要注意的问题
1.本质与形式
①本质
它就是一个函数,所以应该有该有的返回类型,函数名,参数。
②形式
返回类型 operatorXXX(参数列表)
注意:
因为3目运算符? :不允许重载,所以一般的运算符重载最多两个参数。
第一个参数绑定到运算符左边,第二个参数绑定到运算符右边
2.成员函数与非成员函数
(1)成员函数
这个时候,默认会绑定this到this,如果是双目运算符会将this绑定到左边。
这样运算符就会少掉一个。
(2)非成员函数
就没有成员函数的那种限制,一般如果需要用到类private成员的话,可以声明为friend 函数
注意:
输入、输出运算符,由于this代表的对象都在右边,所以一般不将其写为类的成员函数。