C++用友元成员函数重载运算符,实现+-的重载使之适用复数计算
/*用友元成员函数重载运算符,实现+-的重载使之适用复数计算
*/
#include<iostream>
using namespace std;
class complex{
private:double real,virt;
public:complex(){}complex(double r,double v){real=r;virt=v;}~complex(){}friend complex operator + (complex c1,complex c2);friend complex operator - (complex c1,complex c2);friend ostream& operator <<(ostream &,complex &);
};
complex operator + (complex c1,complex c2){return complex(c1.real+c2.real,c1.virt+c2.virt);
}
complex operator - (complex c1,complex c2){return complex(c1.real-c2.real,c1.virt-c2.virt);
}
/*友元函数在外面实例化的时候不用加类名,本来就不怎么严格算作成员函数*/
ostream& operator <<(ostream &output,complex &c){output<<"["<<c.real<<","<<c.virt<<"]"<<endl;return output;
}
void main(){complex c(3.2,2.6),p(6.5,5.8),m;m=c+p;/*调用运算符重载函数执行实部与实部相加,虚部与虚部相加*/cout<<m<<endl;/*运算符重载输出流,使之能输出类对象*/m=c-p;cout<<m<<endl;
}
结果:
C++用友元成员函数重载运算符,实现+-的重载使之适用复数计算相关推荐
- 定义一个复数类Complex,重载运算符“+”,“ -”,“*”,“/”使之能用于计算两个复数的加减乘除。
定义一个复数类Complex,重载运算符"+"," -","*","/"使之能用于计算两个复数的加减乘除.运算符重载函数 ...
- [C++]分数类的定义(成员函数、运算符重载)
[C++]分数类的定义(成员函数.运算符重载) 1 分数类成员和成员函数 1.1 分数类成员 1.2 分数类的成员函数 1.3 分数类的io操作 1.4 分数类的预定义 2 成员函数定义 2.1 化简 ...
- C++友元:友元函数、友元类和友元成员函数
Table of Contents 1.友元函数 2.友元类 3.友元成员函数 友元小结: 参考资料: 有些情况下,允许特定的非成员函数访问一个类的私有成员,同时仍阻止一般的访问,这是很方便做到的.例 ...
- 友元函数 友元类 友元成员函数
友元 一般来说,类内的私有数据是对外不可见的,但在有些情况下,我们需要在类外对该类的私有数据进行访问,这就需要用到一种新技术--友元(friend),即在声明前添加关键字friend. 友元关系是单向 ...
- Th3.9:友元函数、友元类、友元成员函数详述
本博客将记录:类的相关知识点的第9节的笔记! (这个在学习C++基础课程时已经学习过一次了,这里再次简单地回顾一下而已) 今天总结的知识分为以下3个点: 一.友元函数(对于非成员函数而言) ...
- C++可重载运算符和不可重载运算符
可重载运算符: 不可重载运算符:
- 3-5:类与对象中篇——默认成员函数之运算符重载
文章目录 一:运算符重载 (1)运算符重载 A:为什么要有运算符重载? B:如何进行运算符重载 C:注意 (2)赋值运算符重载 二:const修饰类的成员函数 一:运算符重载 C++ 允许在同一作用域 ...
- c++重载运算符_Chapter13:重载——入门(一)
一.走进重载 所谓重载,就是赋予新的含义.函数重载(Function Overloading)可以让一个函数名有多种功能,在不同情况下进行不同的操作.运算符重载(Operator Overloadin ...
- 第八周——重载运算符——项目一(1)实现复数的+-*/
问题及代码: /* *Copyright (c) 2014,烟台大学计算机学院 *All rights reserved. *文件名称:lily.cpp *作者:李莉 *完成日期:2015年4月2日 ...
最新文章
- 溢出漏洞利用小结(基础)
- java异常对象引用变量_Java面向对象编程-异常处理
- 2020-08-20 CountVectorizer 包含示例 API
- android透明视频教程,安卓透明教程(Android transparent tutorial).doc
- PHP生成唯一订单号
- (理论)数据库建模三步骤:概念模型-逻辑模型-物理模型
- 安卓学习笔记23:常用控件 - 网格视图与图像切换器
- hibernate分页中跳转到第几页的功能
- 搜索 + 剪枝 --- POJ 1101 : Sticks
- 智能优化算法:被囊群算法-附代码
- linux中的‘make’和‘makefile’
- jdk11下载与安装教程(win10)超详细
- Adobe dreamweaver CS6小白入门教程
- “白帽子”是怎么炼成的——从菜鸟走过来的心路历程
- 打开组策略 计算机配置,组策略怎么打开? 打开组策略命令与4种方法-电脑教程...
- 恢复系统设置或计算机点击没反应,win7系统电脑无法使用系统还原,按钮点不开的解决方法...
- DDD领域驱动设计浅谈
- prometheus监控域名证书到期时间
- 封头名义厚度如何圆整_基于封头最小成形厚度的封头名义厚度的设计讨论
- 厦门大学2022年计算机考研复试流程