C++中运算符可以被重载,但通常只能作为类的成员函数或者友元函数,例如
class myClass{
public:
int value;
myClass(int v):value(v){} //此形式为成员初始化列表,
构造函数定义:myClass(int v)
成员初始化列表::value(v) //代表value被初始化赋值为v
构造函数体:{} //此处为空
myClass operator+(typeC c){ //但运算符重载作为类的成员函数时,它只需要一个参数
return myClass(this->value*c); //我此处将+重载为乘法*
}
};
class myClass{
public:
int value;
myClass(int v):value(v){}
friend myClass operator+(typeA a,typeB b ){
return myClass(a/b); //我此处将+重载为除法/
}
}