当 const 和指针在一起时
当 const 与函数参数在一起时
一
二
三
用const修饰返回值是表示返回的为一个引用,而不是将对象复制返回,增强效率!!
同时,上面第三种情况需要对需要调用成员的函数“增强信任感”(即在函数体前加 const ,表示不修改成员的值只是调用他们! )
当我们用函数重载重新定义符号时,根据下面基本符号运算,运算结束后,num1与num2的值没有发生变化:
int num1,num2,num3;
num1=num2=1;
num3=num1+num2;
故我们在重载运算符时,返回类型为对象(不是上面的引用!),并且用构造函数将两者相加的值存起来:
能被重载的运算符:
不能被重载的运算符:
补充
当我们想给赋值运算符重载时,因为赋值本身就发生了变化,我们不用构造函数,并且返回类型为引用(所以才 return *this ):