第八章–类的设计
重载问题
对于单目运算符,使用没有参数的成员函数或者一个参数的友元函数来实现
对于双目运算符,使用一个参数的成员函数或者两个参数的友元函数来实现
不能重载的运算符:
. 成员访问运算符
:: 作用于限定运算符
?: 条件运算符
sizeof 长度运算符
语法上规定= () [] ->只能被重载为类的成员函数
关于前置重载和后置重载
type operator ++( ); //前置运算符++重载
type operator ++(int); //后置运算符++重载
如何定义后置运算符(先使用,再++)
cCounter operator ++(int dummy)//或者(0)
{//注意不能返回值定义为&,因为x是局部变量,函数用后即删,会返回无意义的地址
cCounter x= *this;
if(cnt < uMax)
cnt ++;
return (x);
}