#define _CRT_SECURE_NO_WARNINGS#include
using namespace std;class Complex{public:Complex(double _real, double _p_w_picpath);    //构造函数Complex(const Complex & p);           //拷贝构造函数Complex operator+(const Complex &);      //加法运算符的重载Complex operator-(const Complex &);      //减法运算符的重载Complex operator*(const Complex &);      //乘法运算符的重载Complex operator/(const Complex &);      //除法运算符的重载void ShowNumber();                  //输出函数~Complex();                       //析构函数private:double real;double p_w_picpath;};Complex::Complex(double _real, double _p_w_picpath)    //构造函数{real = _real;p_w_picpath = _p_w_picpath;}Complex::Complex(const Complex & p)      //拷贝构造函数{real = p.real;p_w_picpath = p.p_w_picpath;}Complex::~Complex()         //析构函数{cout << "已调用析构函数" << endl;}Complex Complex::operator + (const Complex &op1)     //加法运算符的重载{return Complex(real + op1.real, p_w_picpath + op1.p_w_picpath);}Complex Complex::operator-(const Complex &op1)   //减法运算符的重载{return Complex(real - op1.real, p_w_picpath + op1.p_w_picpath);}Complex Complex::operator*(const Complex &op1)    //乘法运算符的重载{return Complex((real * op1.real) - (p_w_picpath * op1.p_w_picpath), (real * op1.p_w_picpath) + (op1.real * p_w_picpath));}void Complex::ShowNumber()      //输出函数{cout << real << "+" << p_w_picpath << "i" << endl;}int main(){system("color e");Complex op1(1.0, 2.0), op2(3.0, 4.0), op3(5.0, 6.0);Complex op4(op3);op1.ShowNumber();op2.ShowNumber();op3.ShowNumber();op4.ShowNumber();op1 = op2 + op3;op2 = op3 - op4;op3 = op3*op4;op1.ShowNumber();op2.ShowNumber();op3.ShowNumber();system("pause");return 0;}