14、设计一个完整的复数complex类,要求利用运算符重载实现复数的加法(+)、减法(-)、乘法(*)运算

问题描述:

14、设计一个完整的复数complex类,要求利用运算符重载实现复数的加法(+)、减法(-)、乘法(*)运算

这是我以前写的一个演示程序,正好适合,你给你吧.
我对输出做了优化,更符合数学上的习惯.
//
#include
#include
using namespace std;
class Complex{//定义复数类
double real;//实部
double image;//虚部
public:
Complex( double r=0.0,double i=0.0 )//构造
:real(r),image(i)//初始化列表
{}
Complex operator+( const Complex& cc )const//两个复数相加
{
return Complex(real+cc.real,image+cc.image);
}
Complex operator-( const Complex& cc )const//两个复数相减
{
return Complex(real-cc.real,image-cc.image);
}
Complex operator*( const Complex& cc )const//两个复数相加
{
double r=real*cc.real-image*cc.image;
double i=image*cc.real+real*cc.image;
return Complex(r,i);
}
//输出复数信息
friend ostream& operator