C++ - 操作运算符
一、操作运算符
操作运算符:在C++中,编译器有能力将数据、对象和操作符共同组成表达式,解释为对全局或成员函数的调用
该全局或成员函数被称为操作符函数,程序员可以通过重定义函数操作符函数,来达到自己想要的效果
二、友元函数
友元函数就是使函数在全局变量定义,在类中需要调用,因此此函数在类中声明时需要在函数的头部添加friend属性
1、如果在类中声明友元函数,那么友元函数可以查看类中的所有成员
2、友元函数不是成员,因此不能直接访问成员变量
三、单目运算符 ++/--
全局函数:如果运算为:a++,那么在全局函数中定义为:类型 operater ++ (类名)
成员函数:如果运算为:a++,那么在成员函数中定义为:类型 operater ++ (void)
注意:在全局函数中定义,一定要在类中写入友元函数的声明,如果是要定义成员函数++a的话,需要将参数列表的 void 改为 int 即可,全局函数也是如此
四、双目运算符 / + - * % | ^ & += -= *= /= ...
全局函数:如果运算为:a-b,那么在全局函数中定义为:类型 operater - (类名 名字,类名 名字)
成员函数:如果运算为:a-b,那么在成员函数中定义为:类型 operater - (类名 名字)
注:具体返回类型为指针要是引用根据情况而论
下图的例子就是在全局定义,在类中声明的友元函数
五、输入输出运算符
注意:输入、输出运算符不能重载为成员函数,只能是友元。因此只能全局定义
全局函数输出流运算符定义 ostream& operator << (ostream& os,Point& p)
{ }
全局函数输入流运算符定义 istream& operator >> (istream& is,Point& p)
{ }
六、运算符的总结
只能当做成员函数的操作符函数
1、[] 下标运算符,可以把对象当作数组来使用。
2、() 函数运算符,可以把对象当作函数来使用。
3、-> 成员访问运算符,可以把对象当作指针来使用。
4、* 解引用运算符,可以把对象当作指针来使用。
只能当做全局函数的操作符函数
1、输入流运算符函数
2、输出流运算符函数
转载于:https://www.cnblogs.com/goul/p/9460035.html
C++ - 操作运算符相关推荐
- python 只取数值_快收藏!Python常用操作运算符,都在这了!(下)
泰迪学院-Python基础 公众号ID:taidixueyuan 还未阅读第一篇的小可爱,在这里可以直接跳转 快收藏!Python常用操作运算符,都在这了!(上) 5. 逻辑运算符 逻辑运算符包含an ...
- JavaScript学习笔记(三)--操作运算符
JavaScript中的运算符有很多,主要分为算术运算符,比较运算符,逻辑运算符,三目运算符.一元运算符.位运算符等.这些运算符都有一些属于自己的运算规则,下面就为大家介绍一下JavaScript中的 ...
- Python常用操作运算符及练习题
一,操作符 ·算数操作符 操作符 描述 示例 + 加法 -返回两操作数相加的结果 3+2返回5 - 减法-返回左操作数减去右操作数的结果 3-2返回1 * 乘法-返回两操作数相乘的结果 3*2返回6 ...
- python简单操作题,Python常用操作运算符及练习题
一,操作符 ·算数操作符 操作符 描述 示例 + 加法 -返回两操作数相加的结果 3+2返回5 - 减法-返回左操作数减去右操作数的结果 3-2返回1 * 乘法-返回两操作数相乘的结果 3*2返回6 ...
- VHDL操作运算符的优先级顺序
转载于:https://www.cnblogs.com/zhumeng321/p/4551881.html
- jQuery常见的选择器操作运算符
>表示直接子元素 表示("parent > child") 选择器选取指定元素的直接子元素的所有元素. $("div > p") <di ...
- amp 保留指定位c语言,C语言位运算符学习
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? [Toc] 概念位运算是指按二进制进行的运算. C语言提供了6个位操作运算符.这些运算符只能用于整型操作数,即只能用于带 ...
- 二元运算符的运算符重载
运算符重载的两种方式使用成员函数或者使用全局函数(友元函数) 不过是成员函数还是友元函数,最终使用方法是想用的,但是实现的过程不同,实现的代码也不一样 一个简单的运算符重载 其实运算符重载的难点在于如 ...
- SQL Server调优系列基础篇(联合运算符总结)
前言 上两篇文章我们介绍了查看查询计划的方式,以及一些常用的连接运算符的优化技巧,本篇我们总结联合运算符的使用方式和优化技巧. 废话少说,直接进入本篇的主题. 技术准备 基于SQL Server200 ...
- JavaScript基础学习之运算符(三)
运算符也叫操作符 通过运算符对一个或多个值进行运算,并获取运算结果 比如:typeof就是运算符,可以将运算符结果以字符串形式返回 算术运算符 对非Number ...
最新文章
- Domino设置多台转发主机地址
- Absolute C++ Chapter 3 Self-Test Exercise(3)
- LeetCode 454. 四数相加 II 思考分析
- r矢量球坐标系旋度_矢量与场论 | 场论
- JAVA程序员面试总结,高手整理加强版
- The Learning route of GNN
- Matlab系列教程_数值计算_最值、平均值、中值
- 2022年低压电工考试题库及模拟考试
- 使用Sencha cmd安装extjs6
- 公式冒号是什么意思_excel函数公式中的:号是什么意思
- 测试前的准备:搭建测试环境
- 联想SR158 安装CentOS7系统
- c语言程序运行结果怎么看,c语言程序的运行结果.ppt
- Android Room数据库使用
- 详解word2vec
- 从双曲几何到Gauss-Bonnet-Chern定理
- 【云扩RPA】Table
- 20191223-20191227风险指标的学习总结
- python dlib人脸识别_python3+dlib人脸识别及情绪分析
- 【Mysql上分之路】第三篇:Mysql安装与配置、目录结构