:
重载运算符作为成员函数时
operator ()
{
}
可以看到,重载函数 operator+访问了两个对象中的成员,一个是对象中的成员...+”重载为非成员函数后,C++编译系
统将程序中的表达式 a+b 解释为:operator+(a,b) 即执行 a+b 相当于调用:
Complex operator + (Complex &a,Complex...// 正确 , 类型匹配
c3=c2+i; // 错误 , 类型不匹配
请注意,数学上的交换律在此不适用。 如果希望适用交换律,则应再重载
一次运算符“+”。 如 Complex operator...针对“++”和“–”这一特点,C++约定: 在自增(自减)运算符重载函数中,增加一个 int型形参,就是后置自增(自减)运算符函数。
可以看到: 重载后置自增运算符时,多了一个 int 型的参数,增加这个参数只是为了与前置自增运算符重载函数有所区别...,此外没有任何作用。 编译系统在遇到重载后置自增运算符时,会自动调用此函数。
请注意前置自增运算符“++”和后置自增运算符“++”二者作用的区别。
前者是先自加,返回的是修改后的对象本身。 后者返回的是自加前的对象