头文件complex0.h
#pragma once
#include <iostream>
class complex0
{
double real;
double img;
public:
complex0(void);
complex0(double a, double b);
~complex0(void);
complex0 operator~() const;
complex0 operator+(complex0 &c) const;
complex0 operator-(complex0 &c) const;
complex0 operator*(complex0 &c) const;
complex0 operator*(double r) const;
friend complex0 operator*(double r, complex0 &c)
{
return c*r;
}
friend std::ostream & operator<<(std::ostream &os, complex0 &c);
friend std::istream & operator>>(std::istream &is, complex0 &c);
};
源文件complex.cpp
#include "complex0.h"
complex0::complex0(void)
{
}
complex0::complex0(double a, double b)
{
this->real = a;
this->img = b;
}
complex0::~complex0(void)
{
}
complex0 complex0::operator~() const
{
return complex0(re