使用重载运算符实现一个复数类
实验目的:
1.掌握用成员函数重载运算符的方法
2.掌握用友元函数重载运算符的方法
实验要求:
- 定义一个复数类,描述一些必须的成员函数,如:构造函数,析构函数,赋值函数,返回数据成员值的函数等。
- 定义运算符重载函数,通过重载运算符:+,-,,/,直接实现二个复数之间的加减乘除运算。编写一个完整的程序,测试重载运算符的正确性。要求乘法“+”,“”用友元函数实现重载,除法“-”,“/”用成员函数实现重载,参数是复数或实数。
- 通过重载运算符:>>,<<,=,直接实现复数的输入、输出及赋值运算,通过重载运算符:= =,!=直接实现复数的比较运算,编写一个完整的程序,测试重载运算符的正确性。
操作菜单可参考如下格式:
1.输入复数
2.查看输入的复数
3.复数相加
4.复数相减
5.复数相乘
6.复数相除
7.输出结果
0.退出
#include <iostream>
using namespace std;
class Complex{//复数类
public:
Complex(double r=0,double i=0){//构造函数
re=r;
im=i;
}
//~Complex();//析构函数
friend Complex operator+(Complex &c1,Complex &c2);//用友元函数实现重载
friend Complex operator*(Complex &c1,Complex &c2);//用友元函数实现重载
Complex operator-(Complex &c);//用成员函数实现重载
Complex operator/(Complex &c);//用成员函数实现重载
friend istream& operator>>(istream &in, Complex &c);
//需要访问private成员变量,所以声明为complex类的友元函数
friend ostream& oper