一、思维导图
![](https://i-blog.csdnimg.cn/direct/4af16738f6914195b22d7ce025749cf8.png)
二、完成关系运算符重载
#include <iostream>
using namespace std;
class Person
{
friend const Person operator+(const Person &L, const Person &R);
// friend bool operator>(const Person &L, const Person &R);
private:
int a;
int b;
public:
Person() {}
Person(int a, int b):a(a), b(b) {}
// const Person operator+(const Person &R) const
// {
// Person temp;
// temp.a = a + R.a;
// temp.b = b + R.b;
// return temp;
// }
bool operator>(const Person &R) const
{
if(a > R.a && b > R.b){
return true;
}else{
return false;
}
}
void show()
{
cout << "a = " << a << " b = " << b << endl;
}
};
const Person operator+(const Person &L, const Person &R)
{
Person temp;
temp.a = L.a + R.a;
temp.b = L.b + R.b;
return temp;
}
//bool Person operator>(const Person &L, const Person &R)
//{
// if(L.a > R.a && L.b > R.b){
// return true;
// }else{
// return false;
// }
//}
int main()
{
Person p1(12, 34);
Person p2(87, 65);
Person p3 = p1 + p2;
p3.show();
if(p3 > p2)
{
cout << "p3 > p2" << endl;
}
return 0;
}