#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
class Complex
{
public:
//构造函数
Complex(double real = 0.0, double image = 0.0)
:_real(real)
,_image(image)
{
;
}
//拷贝构造
Complex(const Complex& c)
:_real(c._real)
,_image(c._image)
{
;
}
//析构
~Complex()
{
;
}
void Display()
{
cout<<"实部:"<<_real<<" 虚部:"<<_image<<endl;
}
bool operator>(const Complex&) const;
bool operator<(const Complex&) const;
bool operator==(const Complex&) const;
bool operator!=(const Complex&) const;
Complex operator+(const Complex&) const;
Complex& operator=(const Complex&);
Complex& operator+=(const Complex&);
Complex& operator++(); //前置++
Complex operator++(int); //后置++
private:
double _real;
double _image;
};
bool Complex::operator>(const Complex& c) const
{
return _real > c._real && _image > c._image;
}
bool Complex::operator==(const Complex& c) const
{
if (_real == c._real && _image == c._image)
{
return true;
}
return false;
}
bool Complex::operator<(const Complex& c) const
{
return !(*this>c || *this==c);
}
bool Complex::operator!=(const Complex& c) const
{
return !(*this == c);
}
Complex Complex::operator+(const Complex& c) const
{
Complex tmp;
tmp._real = _real + c._real;
tmp._image = _image + c._image;
return tmp;
}
Complex& Complex::operator+=(const Complex& c)
{
_real += c._real;
_image += c._image;
return *this;
}
Complex& Complex::operator++() //前置++,返回++以后的值
{
_real += 1;
return *this;
}
Complex Complex::operator++(int) //后置++,返回++以前的值
{
Complex tmp(*this);
tmp._real += 1;
return tmp;
}
Complex& Complex::operator=(const Complex& c)
{
if(this != &c) //防止自己给自己赋值,注:a和b值一样的话也会赋值
{
_real = c._real;
_image = c._image;
}
return *this;
}
复数类:class Complex
最新推荐文章于 2024-06-25 08:00:00 发布