第8周项目一-实现复数类中的运算符重载(利用类的友元函数)
来源:互联网 发布:如何删除ubuntu双系统 编辑:程序博客网 时间:2024/06/05 17:52
/* * Copyright (c) 2013, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:徐凯旋 * 完成日期:2013 年 4 月 19 日 * 版 本 号:v1.0 */ #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){ Complex c; c.real=c1.real+c2.real; c.imag=c1.imag+c2.imag; return c;}Complex operator-(Complex &c1,Complex &c2){ Complex c; c.real=c1.real-c2.real; c.imag=c1.imag-c2.imag; return c;}void Complex::display(){ cout<<"("<<real<<","<<imag<<"i"<<")"<<endl;}Complex operator*(Complex &c1,Complex &c2){ Complex c3; c3.real=c1.real*c2.real-c1.imag*c2.imag; c3.imag=c1.imag*c2.real+c1.real*c2.imag; return c3;}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();system("PAUSE");return 0;}
运行结果:
说明:
这一篇也没写除法的部分...
- 第8周项目一-实现复数类中的运算符重载(利用类的友元函数)
- 第8周项目1-实现复数类中的运算符重载(友元函数)
- 第八周 项目一 (2) 实现复数类中的运算符重载 友元函数
- 第八周 项目一-复数类中的运算符重载(2)友元函数实现
- 第8周项目1.2 类的友元函数实现复数类中的运算符重载
- 第8周项目1(2)实现复数类中的运算符重载(友元函数)
- 第八周项目一任务二——实现复数类中的运算符重载(利用类的友元函数)
- 第八周项目一(2):实现复数类中的运算符重载:类的友元函数
- 项目一--用类的友元函数实现复数类中的运算符重载
- 第8周-重载运算符-实现复数类中的运算符重载-类的友元函数
- 第7周-项目1-实现复数类中的运算符重载-类的友元函数
- 第12周项目-复数类中的运算符重载(2)(友元函数)
- 第12周项目1-实现复数类中的运算符重载(友元)
- 第7周项目2-实现复数类中的运算符重载(2、友元函数)
- 第八周-项目一-复数类中的运算符重载(友元函数)
- 第8周项目一-实现复数类中的运算符重载(用类的成员函数完成)
- 第八周 项目一(2):实现复数类中的运算符重载(友元函数)
- 15第八周项目一——实现复数类中的运算符重载(友元函数)
- 2013-4-19.2~用类的友元函数实现运算符的重载
- 一个有无限层间接引用的循环链表
- GDI编程之 Bitmap
- 第七周上机任务 静态成员应用
- 第八周上机项目一采用友元函数
- 第8周项目一-实现复数类中的运算符重载(利用类的友元函数)
- Android 移动动画- TranslateAnimation
- 根据程序集名称初始化程序集Assembly 根据类FullName和Assembly Name初始化类对象
- bootimg解压和压缩破解
- 用类的友元函数完成运算符的重载
- mac mysql编译
- Ubuntu 12.04 64位 -- eclipse新建android项目没有R文件
- Gitblit的安装配置及访问
- 第八周任务-项目一(任务三)