第十二周项目1-实现复数类中的运算符重载(1.2友元函数)
来源:互联网 发布:苍蝇水在淘宝怎么买 编辑:程序博客网 时间:2024/05/05 03:09
问题及代码:
/* *Copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:zwj.cpp *作 者:张伟晶 *完成日期:2016年5月12日 *版 本 号: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+(const Complex &c1,const Complex &c2); friend Complex operator-(const Complex &c1,const Complex &c2); friend Complex operator*(const Complex &c1,const Complex &c2); friend Complex operator/(const Complex &c1,const Complex &c2); void display();private: double real; double imag;};//下面定义成员函数 //友元函数Complex operator+(const Complex &c1,const Complex &c2){ return Complex(c1.real+c2.real,c1.imag+c2.imag);} Complex operator-(const Complex &c1,const Complex &c2){ return Complex(c1.real-c2.real,c1.imag-c2.imag);} Complex operator*(const Complex &c1,const Complex &c2){ return Complex(c1.real*c2.real,c1.imag*c2.imag);} Complex operator/(const Complex &c1,const Complex &c2){ return Complex(c1.real/c2.real,c1.imag/c2.imag);}void Complex::display(){ cout<<"("<<real<<","<<imag<<"i)"<<endl;}//下面定义用于测试的main()函数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;}
运行结果:
知识点总结:
友元函数定义运算符重载
学习心得:
//注意,友元函数的定义和声明friend Complex operator+(const Complex &c1,const Complex &c2); Complex operator/(const Complex &c1,const Complex &c2)
0 0
- 第十二周项目1-实现复数类中的运算符重载(1.2友元函数)
- 第十二周项目1.2—实现复数类中的运算符重载(友元函数)
- 第十二周项目1.2—实现复数类中的运算符重载(友元函数)
- 第十二周项目1实现复数类的运算符重载 (友元函数)
- 第十二周实践项目1————实现复数类中的运算符重载之友元函数
- 第8周项目1-实现复数类中的运算符重载(友元函数)
- 第八周 【项目1-实现复数类中的运算符重载】友元函数
- 第八周项目1-2:实现复数类中的运算符重载-友元函数
- 第八周 项目一 (2) 实现复数类中的运算符重载 友元函数
- 第八周 项目一-复数类中的运算符重载(2)友元函数实现
- 第十二周项目1.1实现复数类中的运算符重载(成员函数)
- 第十二周项目1.1实现复数类中的运算符重载(成员函数)
- 第二学期第八周项目1--实现复数类中的运算符重载(两个复数的运算友元)
- 第八周项目1-实现复数类中的运算符重载(类的友元函数)
- 第八周项目1 实现复数类中的运算符重载 (用类的友元函数)
- 第8周项目1(2)实现复数类中的运算符重载(友元函数)
- 2013第八周上机任务【项目1 实现复数类中的运算符重载(友元函数)】
- 第八周项目1——2 实现复数类中的运算符重载(友元函数)
- objdump 命令
- win7 telnet用法
- apache-activemq(四)
- Android基础——3.布局&Logcat
- UILabel数字变化增加动画
- 第十二周项目1-实现复数类中的运算符重载(1.2友元函数)
- C++中typedef的用法总结
- 简述Activity的启动流程(类的创建)
- Restful形式接口文档生成之Swagger与SpringMVC整合手记
- ecshop文件结构名称手册
- 向上转型,重写基类函数,访问权限,循环依赖---图片为什么上传不了??
- 2.Linux的ACL权限
- jboss eap 6.4部署项目问题
- android-support-multidex解决Dex 文件方法数超过65536