当前位置: 代码迷 >> 综合 >> 第八周上机项目一采用友元函数
  详细解决方案

第八周上机项目一采用友元函数

热度:55   发布时间:2024-01-22 04:42:28.0

/*
02.* 程序的版权和版本声明部分
03.* Copyright (c)2012, 烟台大学计算机学院学生
04.* All rightsreserved.
05.* 文件名称: fun.cpp
06.* 作 者:李全港
07.* 完成日期:2013 年 4月 19日
08.* 版本号: v1.0
09.* 对任务及求解方法的描述部分:const的应用
10.* 输入描述:略
11.* 问题描述:略
12.* 程序输出:如下
13.
*/
#include <iostream>using namespace std;class Complex
{public:Complex(){real=0;imag=0;}Complex(double r,double i){real=r;imag=i;}friend Complex operator+(Complex &c1,Complex &c2);friend Complex operator-(Complex &c1,Complex &c2);friend Complex operator*(Complex &c1,Complex &c2);friend Complex operator/(Complex &c1,Complex &c2);void display();private:double real;double imag;
};
//下面定义成员函数
Complex operator+(Complex &c1,Complex &c2)
{return Complex(c1.real+c2.real,c1.imag+c2.imag);
}
Complex operator-(Complex &c1,Complex &c2)
{return Complex(c1.real-c2.real,c1.imag-c2.imag);
}
Complex operator*(Complex &c1,Complex &c2)
{return Complex(c1.real*c2.real,c1.imag*c2.imag);
}
Complex operator/(Complex &c1,Complex &c2)
{return Complex(c1.real/c2.real,c1.imag/c2.imag);
}
void Complex::display()
{cout<<"("<<real<<","<<imag<<")"<<endl;
}//下面是测试函数
int main()
{Complex c1(3,4),c2(5,-10),c3;cout<<"c1=";c1.display();cout<<"c2=";c2.display();c3=c1+c2;cout<<"c1+c2=";c3.display();c3=c1-c2;cout<<"c1-c2=";c3.display();c3=c1*c2;cout<<"c1*c2=";c3.display();c3=c1/c2;cout<<"c1/c2=";c3.display();return 0;
}





  相关解决方案