C++运算符重载
C++中预定义的运算符的操作对象只能是基本数据类型。但实际上,对于许多用户自定义类型(例如类),也需要类似的运算操作。这时就必须在C++中重新定义这些运算符,赋予已有运算符新的功能,使它能够用于特定类型执行特定的操作。运算符重载的实质是函数重载,它提供了C++的可扩展性,也是C++最吸引人的特性之一。
运算符函数定义的一般格式如下:
<返回类型说明符> operator <运算符符号>(<参数表>)
{
<函数体>
}
class Complex{
public:
double real,imag;
Complex(double r=0;doubble i=0)
{
real = r;
imag = i;
}
};
Complex operator+(Complex om1,Complex om2)
{
Complex temp;
temp.real = om1.real+om2.real;
temp.imag = om1.imag+om2.imag;
return temp;
}