#include<iostream>
using namespace std;
class Pair
{
int m;
int n;
public:
Pair(int i, int j):m(i),n(j) {}
bool operator >(Pair p) const;
};
bool Pair::operator>(Pair p)const
{
if (m!=p.m)
return m>p.m;
return n>p.n;
}
int main()
{
Pair p1(3,4),p2(4,3), p3(4,5);
cout<<(p1>p2)<<(p2>p1)<<(p2>p3)<<(p3>p2);
return 0;
}
运行结果:
错误正确错误正确
分析:
类的成员函数实现>号重载,首先P1>P2 3不等于4于是判断3大于4是否正确,不正确所以输出0后面以此类推