1.思维导图
2.程序
#include <iostream>
using namespace std;
class Per
{
friend bool operator<=(const Per &L,const Per &R);
friend const Per operator+(const Per &L,const Per &R);
friend Per operator+=(Per &L,const Per &R);
private:
int a;
int b;
public:
Per(){};
Per(int a,int b):a(a),b(b){
}
/* Per operator+=(const Per &R)
{
a+=R.a;
b+=R.b;
return *this;
}*/
Per operator-=(const Per &R)
{
a-=R.a;
b-=R.b;
return *this;
}
Per operator*=(const Per &R)
{
a*=R.a;
b*=R.b;
return *this;
}
Per operator/=(const Per &R)
{
a/=R.a;
b/=R.b;
return *this;
}
/* bool operator<(const Per &R)const
{
if(a<R.a&&b<R.b)
{
return true;
}else
{
return false;
}
}*/
bool operator>(const Per &R)const
{
if(a>R.a&&b>R.b)
{
return true;
}else
{
return false;
}
}
bool operator<(const Per &R)const
{
if(a<R.a&&b<R.b)
{
return true;
}else
{
return false;
}
}
bool operator==(const Per &R)const
{
if(a==R.a&&b==R.b)
{
return true;
}else
{
return false;
}
}
bool operator!=(const Per &R) const
{
if(a!=R.a&&b!=R.b)
{
return true;
}else
{
return false;
}
}
/*const Per operator+(const Per &other)const
{
Per temp;
temp.a=a+other.a;
temp.b=b+other.b;
return temp;
}*/
const Per operator-(const Per &Right)const
{Per temp;
temp.a=a-Right.a;
temp.b=b-Right.b;
return temp;
}
const Per operator*(const Per &Right)const
{
Per temp;
temp.a=a*Right.a;
temp.b=b*Right.b;
return temp;
}
const Per operator/(const Per &Right)const
{
Per temp;
temp.a=a/Right.a;
temp.b=b/Right.b;
return temp;
}
void show()
{
cout<<"a="<<a<<" b="<<b<<endl;
cout<<"=============="<<endl;
}
};
bool operator<=(const Per &L,const Per &R)
{
if(L.a<=R.a&&L.b<=R.b)
{
return true;
}else
{
return false;
}
}
const Per operator+(const Per &L,const Per &R)
{
Per temp;
temp.a=L.a+R.a;
temp.b=L.b+R.b;
return temp;
}
Per operator+=( Per &L, const Per &R)
{
L.a+=R.a;
L.b+=R.b;
return L;
}
int main()
{
Per per1;
Per per2(30,20);
Per per3(30,20);
Per per4=per2+per3;
cout<<"+:"<<endl;
per4.show();
Per per5=per2-per3;
cout<<"-:"<<endl;
per5.show();
Per per6=per2*per3;
cout<<"*:"<<endl;
per6.show();
Per per7=per2/per3;
cout<<"/:"<<endl;
per7.show();
per4+=per3;
cout<<"+=:"<<endl;
per4.show();
per4-=per3;
cout<<"-=:"<<endl;
per4.show();
per4*=per3;
cout<<"*=:"<<endl;
per4.show();
per4/=per3;
cout<<"/=:"<<endl;
per4.show();
if(per2==per3)
{
cout<<"per2==per3"<<endl;
}
if(per2<per4)
{
cout<<"per2<per4"<<endl;
}
if(per4>per2)
{
cout<<"per4>per2"<<endl;
}
if(per4!=per2)
{
cout<<"per2!=per4"<<endl;
}
return 0;
}
成果图