1、重载的运算符是具有特殊名字的函数,它们的名字由关键字 operator 和其后要定义的运算符号共同组成,和其他函数一样,重载的运算符也包含返回类型,参数列表以及函数体。

2、当一个重载的运算符是成员函数时, this 指针绑定到左侧运算对象上,成员运算符函数的显式参数数量比运算对象数量少一个。

3、对于重载的运算符,我们不能改变其原生的优先级和结合律。

4、取地址运算符,逻辑运算符,逗号运算符,前置与后置运算符不要重载,因为重载后会使得与原生含义或者行为不一致。

5、如果一个类重载了 == 运算符,那么也应该重载 != 运算符。

6、如果一个类重载了 < 运算符,那么他也应该重载其他关系运算符

7、重载运算符的返回类型通常情况下应该与内置版本的返回类型一致。逻辑运算符和关系运算符应该返回 bool ,算数运算符应该返回一个类类型的值,赋值运算符和复合赋值运算符应该返回左侧运算对象的一个引用。

8、= , [], (), ->运算符必须重载为成员函数,复合赋值运算符可以重载为非成员函数

CPP中的操作符重载相关推荐

  1. 【Groovy】集合遍历 ( 操作符重载 | 集合中的 “ + “ 操作符重载 | 集合中的 “ - “ 操作符重载 | 代码示例 )

    文章目录 一.集合中的 " + " 操作符重载 二.集合中的 " - " 操作符重载 三.完整代码示例 一.集合中的 " + " 操作符重载 ...

  2. C++中逗号操作符重载的分析

    1,关注逗号操作符重载后带来的变化: 2,逗号操作符: 1,逗号操作符(,)可以构成都好表达式:exp1, exp2, exp3, ..., expN 1,逗号表达式用于将多个表达式连接为一个表达式: ...

  3. Python中的操作符重载

    类可以重载python的操作符 操作符重载使我们的对象与内置的一样.__X__的名字的方法是特殊的挂钩(hook),python通过这 种特殊的命名来拦截操作符,以实现重载. python在计算操作符 ...

  4. python中的运算符重载_Python中的操作符重载

    Python部落组织翻译,禁止转载,欢迎转发. BY ALOK THAKUR · FEBRUARY 22, 2016 2016年2月22日 , ALOK THAKUR写 Python支持许多内建的类型 ...

  5. java 两个运算符重载_Java中的操作符重载

    0.Java操作符重载 Java中我们可以执行如下语句: String fullName = "hongliang "+"cao"; System.out.pr ...

  6. 【Groovy】集合遍历 ( 操作符重载 | 集合中的 “ << “ 操作符重载 | 使用集合中的 “ << “ 操作符添加一个元素 | 使用集合中的 “ << “ 操作符添加一个集合 )

    文章目录 一.集合中的 " << " 操作符重载 1.使用集合中的 " << " 操作符添加一个元素 2.使用集合中的 " & ...

  7. 【C++深度剖析教程8】C++的操作符重载的概念

    之前学习了类的函数重载的概念,今天学习操作符重载的概念.在这之前我们先看一个例子: 上面是一个复数的加法,a为复数的实部,b为复数的虚部,在main函数里我想实现复数c1与c2的加法.很显然,正常的+ ...

  8. BlogEngine学习一:操作符重载

    我们知道,在C#中,一元或者是二元操作符能够自动的进行关系运算.比如说"+"代表相加,"-"代表相减,"*"代表相乘等等.这不仅仅是在C#中 ...

  9. C++ 解引用操作符重载

    *是一个一元操作符,作用于指针,获取指针所指单元的内容.当某个类中对*操作符重载时,是将该类对象当做一个指针看待,用*操作符提取指针所指向的内容. #include <iostream> ...

最新文章

  1. C#-datagridview隐藏行头
  2. 【实用】CTS请求号传输报错处理
  3. x shell 配置 和相关注意点(vm相关注意点)
  4. SpringBoot_日志-SpringBoot日志关系
  5. jsp调用controller方法_SpringMVC五大核心组件及调用过程
  6. Sql数据库批量清理日志
  7. CentOS64位下python2.6升级到2.7的详细教程
  8. Ubuntu 13.10 软件更新源列表
  9. Abseil之Prefer Factory Functions to Initializer Methods
  10. Atitit.Gui按钮与面板---项目规模的评估----文件数统计,结构,代码行数,每类型文件行数.
  11. miniusbpcb封装_USB接口封装及定义大全,不用去翻手册了
  12. maya藤蔓插件_用maya制作藤蔓蔓延的效果
  13. My SQL数据库基本操作
  14. 核心网upf作用_5G核心网SMF和UPF拓扑增强技术研究
  15. threejs写的模仿微信跳一跳游戏
  16. 【光电智造】机器人视觉伺服技术
  17. 十行js代码实现windows上录屏功能
  18. 怎样使用GetAsyncKeyState()
  19. 成为计算机网络管理员必修课(一)
  20. 今日头条回应90亿元地产收购传闻;微信号遭公开买卖;苹果新AirPods增加黑色款 | 雷锋早报...

热门文章

  1. 因果图法测试实例:一个处理单价为1元5角钱的盒装饮料的自动售货机软件。
  2. Android应用内在线查看PDF文件
  3. [Error]在Linux服务器:cannot connect to X server localhost:11.0
  4. 自动人脸识别基本原理 --基于静态图像的识别算法(一)特征脸
  5. Unity 之Vector3的球形插值Slerp详解
  6. 名帖153 王羲之 行书《行书帖选》
  7. 大数据生态系统 修仙之道 Linux Blog
  8. 制作准考证的步骤,作业
  9. 在docker里使用jupyterhub
  10. Idea导入eclipse web项目404问题(webcontent)