运算符重载
概念:重新定义运算符,为了适应不同的数据类型。
可用成员函数重载和全局函数重载两种方式
加号运算符重载
格式:
/*
返回值 operator+(参数1,参数2,...){
//实现逻辑
}
*/
内置数据类型的表达式的运算符不可改变,不可滥用
左移运算符重载
用处:重载输出,类似toString
注意:在重载输出时,不用成员函数重载
格式:
/*
//重载输出时
ostream & operator<<(ostream &out , 输出对象)
{
//实现逻辑
return out;
}
*/
递增运算符重载
格式:
//前置
返回对象& operator()
{
//实现逻辑
return *对象
}
//后置
返回对象 operator(数据类型)
{
//先记录
对象类型 temp = *this;
//实现逻辑
return temp;
}