C++ 中的运算符重载
可以重定义或重载大部分 C++ 内置的运算符。这样,就能使用自定义类型的运算符。
重载的运算符是带有特殊名称的函数,函数名是由关键字 operator 和其后要重载的运算符符号构成的。与其他函数一样,重载运算符有一个返回类型和一个参数列表。
Box operator+(const Box&);
Box operator+(const Box&, const Box&);
声明
Box operator+(const Box& b1); //重载操作符+声明
定义
Box Box::operator+(const Box& b) //重载操作符+定义
{
Box box;
box.width = this->width + b.width;
return box;
}
调用
int main()
{
Box box1,box2,box;
box1.setWidth(10.0);
box2.setWidth(20.0);
box = box1 + box2;
printWidth(box);
return 0;
}