class Complex
{
public:
Complex(int r = 10, int i = 10)
:mreal(r), mimage(i){}
Complex& operator=(const Complex &src)
{
mreal = src.mreal;
mimage = src.mimage;
return *this;
}
//operator+ comp3 = comp1 + comp2;
Complex operator+(const Complex &src)
{
return Complex(this->mreal + src.mreal,
this->mimage + src.mimage);
}
Complex operator-(const Complex &src)
{
return Complex(this->mreal - src.mreal,
this->mimage - src.mimage);
}
void operator+=(const Complex &src)
{
this->mreal += src.mreal;
this->mimage += src.mimage;
}
Complex operator++(int)
{
return Complex(this->mreal++, this->mimage++);
}
Complex& operator++()
{
++mreal;
++mimage;
return *this;
}
void show()
{
cout << "real:" << mreal << "image:" << mimage << endl;
}
private:
int mreal;//实部
int mimage;//虚部
friend ostream& operator<<(ostream &out, const Complex &src);
friend istream& operator>>(istream &in, Complex &src);
friend Complex operator+(const Complex &lhs, const Complex &rhs);
};
ostream& operator<<(ostream &out, const Complex &src)
{
out << "real:" << src.mreal << " image:" << src.mimage;
return out;
}
istream& operator>>(istream &in, Complex &src)
{
in >> src.mreal >> src.mimage;
return in;
}
Complex operator+(const Complex &lhs, const Complex &rhs)
{
return Complex(lhs.mreal + rhs.mreal,
lhs.mimage + rhs.mimage);
}
Complex复数类
最新推荐文章于 2021-05-15 19:46:51 发布