建设职业技术学院网站,做赚钱的网站有哪些,it培训课程,做外文翻译的网站复数类的实现#xff0c;写出三种构造函数#xff0c;算术运算符、关系运算符、逻辑运算符重载尝试实现自增、自减运算符的重载
#include iostream
using namespace std;
class Num
{int rel; //实部int vir; //虚部
public:Num():rel(2),vir(1){}Num(int rel,…复数类的实现写出三种构造函数算术运算符、关系运算符、逻辑运算符重载尝试实现自增、自减运算符的重载
#include iostream
using namespace std;
class Num
{int rel; //实部int vir; //虚部
public:Num():rel(2),vir(1){}Num(int rel,int vir):rel(rel),vir(vir){}Num operator(const Num other){cout Num的拷贝赋值函数 endl;this-rel other.rel;this-vir other.vir;return *this;}friend Num operator(const Num n1,const Num n2);Num operator-(Num other);friend Num operator*(const Num n1,const Num n2);Num operator/(const Num n1);friend Num operator%(const Num n1,const Num n2);friend bool operator(const Num n1,const Num n2);bool operator(const Num n1);friend bool operator(const Num n1,const Num n2);bool operator(const Num n1);friend bool operator(const Num n1,const Num n2);friend bool operator(const Num n1,const Num n2);bool operator||(const Num n1);friend Num operator(Num n1);Num operator(int);friend Num operator--(Num n1);Num operator--(int);void show();
};
Num operator(const Num n1,const Num n2)
{Num temp;temp.rel n1.reln2.rel;temp.vir n1.virn2.vir;return temp;
}
Num Num::operator-(Num other)
{Num temp;temp.rel this-rel-other.rel;temp.vir this-vir-other.vir;return temp;
}
Num operator*(const Num n1,const Num n2)
{Num temp;temp.rel n1.rel*n2.rel;temp.vir n1.vir*n2.vir;return temp;
}
Num Num::operator/(const Num n1)
{Num temp;temp.rel this-rel/n1.rel;temp.vir this-vir/n1.vir;return temp;
}
Num operator%(const Num n1,const Num n2)
{Num temp;temp.rel n1.rel%n2.rel;temp.vir n1.vir%n2.vir;return temp;
}
bool operator(const Num n1,const Num n2)
{if(n1.reln2.rel){return n1.reln2.rel;}else if(n1.reln2.rel){return n1.virn2.vir;}return n1.reln2.rel;
}
bool Num::operator(const Num n1)
{if(this-reln1.rel){return this-reln1.rel;}else if(this-reln1.rel){return this-virn1.vir;}return this-reln1.rel;
}
bool operator(const Num n1,const Num n2)
{if(n1.reln2.rel){return n1.reln2.rel;}else if(n1.reln2.rel){return n1.virn2.vir;}return n1.virn2.vir;
}
bool Num::operator(const Num n1)
{if(this-reln1.rel){return this-reln1.rel;}else if(this-reln1.rel){return this-virn1.vir;}return this-reln1.rel;
}
bool operator(const Num n1,const Num n2)
{if(n1.reln2.rel){return n1.reln2.rel;}else if(n1.reln2.rel){return n1.virn2.vir;}return n1.virn2.vir;
}bool operator(const Num n1,const Num n2)
{return (n1.reln2.rel)||(n1.virn2.vir);
}
bool Num::operator||(const Num n1)
{return (this-rel||n1.rel)(this-vir||n1.vir);
}
Num operator(Num n1)
{(n1.rel);(n1.vir);return n1;
}
Num Num::operator(int)
{Num temp;temp.relthis-rel;temp.virthis-vir;return temp;
}
Num operator--(Num n1)
{--(n1.rel);--(n1.vir);return n1;
}
Num Num::operator--(int)
{Num temp;temp.relthis-rel--;temp.virthis-vir--;return temp;
}
void Num::show()
{cout rel vir i endl;
}
int main()
{Num n1;Num n2(1,4);Num n3;n3 n1n2;n3.show();Num n4;n4n1-n2;n4.show();n4;n4.show();--n4;n4.show();cout(n4n3)endl;Num n5;n5--;n5.show();n5;n5.show();cout(n2n3)endl;cout(n2||n5)endl;return 0;
}