当前位置: 首页 > news >正文

C++运算符重载

C++运算符重载是指为用户自定义的类型赋予运算符特殊的含义,使得运算符可以根据操作数的类型执行不同的操作。例如,您可以重载+运算符,使得它可以用于连接字符串或者相加复数。

C++运算符重载的基本语法是:

返回值 operator 运算符 (参数列表)

其中,operator是关键字,运算符是要重载的运算符符号,参数列表是运算符的操作数。返回值和参数列表可以根据运算符的性质和需求进行设计。

C++运算符重载有两种实现方式:使用成员函数或者使用友元函数。使用成员函数时,重载运算符的第一个操作数必须是调用该函数的对象,而使用友元函数时,可以自由指定操作数的类型和个数。


C++中有一些运算符是可以重载的,有一些是不可以重载的。下面是一个可重载运算符的列表:

运算符类型 包括的运算符
双目算术运算符 + (加),- (减),* (乘),/ (除),% (取模)
关系运算符 == (等于),!= (不等于),< (小于),> (大于),<= (小于等于),>= (大于等于)
逻辑运算符 `
单目运算符 + (正),- (负),* (指针),& (取地址)
自增自减运算符 ++ (自增), -- (自减)
赋值运算符 =, +=, -= , *=, /= , %= , &=, `
空间申请与释放 new, delete, new [], delete []
其他运算符 () (函数调用), -> (成员访问), ,(逗号), [](下标)

下面是一个不可重载运算符的列表:

  • . :成员访问运算符
  • .*, ->* :成员指针访问运算符
  • :: :域运算符
  • sizeof :长度运算符
  • ?: :条件运算符
  • # : 预处理符号
http://www.wuyegushi.com/news/607.html

相关文章:

  • CVE-2020-11978 Airflow dag命令注入漏洞 (复现)
  • stp
  • 暑训#1补题
  • 蓝桥杯2025省赛A组游记题解
  • 打开CMD的方式
  • 关于广度优先搜索(BFS)的笔记
  • swagger2访问时报StackOverflow错误
  • 定位堆相关问题:OllyDbg2的off-by-one漏洞分析
  • 用户可控的统一风格迁移框架 - 亚马逊科学研究院
  • ARM简介 - LI,Yi
  • 板刷 ABC 计划
  • 题解:P4191 [CTSC2010] 性能优化
  • Java“class file contains wrong class”解决
  • 电脑中右键打开方式中出现已经卸载的应用程序(如,Dreamweaver)
  • 将 Windows 系统显示时间的精度修改为秒
  • 日记
  • 每日论文7.27——基于嵌入式GPU的指纹汗孔识别软件并行设计
  • XXL-SSO v1.2.0 发布|单点登录框架
  • 一、Web端UI自动化测试--环境搭建
  • 水果机,夺宝动画实现
  • DMP学习路线之进阶
  • 关于逆元目前的两种求法以及证明
  • [Record] 计数选讲 20250727
  • 7/27
  • 大数据之路:阿里巴巴大数据实践——大数据领域建模综述
  • POLIR-Laws-民法典: 第三编 合同 : 第二分编 典型合同: 21.保管、22.仓储、23.委托、24.物业服务、25.行纪、26.中介
  • 记录个IAR程序下载后硬件复位不运行,必须断电复位才运行的问题
  • 操作系统 - 浪矢
  • Qt布局管理
  • 最小树形图:朱刘算法