一.简介
C++内置类型能够用一般运算符进行操作,而对于自定义类型来说,就要用重载运算符来对两个类对象进行操作
常见的重载运算符有: + - * / ==等
二.两个类型比较
//1.声明
class person{
private:
int age;
public:
person(int a){
this->age=a;
}
inline bool operator == (const person &ps) const;
};
//2.定义
bool person::operator== (const person &ps) const{
if(this->age==ps.age){
return true;
}
return false;
}
//3.调用
int main(){
person p1(10);
person p2(20);
if(p1==p2){
...
}
}
//全局重载运算符,没有this指针
bool operator== (person& p1,person const& p2){
if(p1.age==p2.age){
return true;
}
return false;
}