另外类作为形参传入函数时, 有些情况可以不采用引用传递,但有的时候必须采用引用传递,否则会出错。
比如重载
ARRAY & operator = (ARRAY &b);
能解释下两个&号分别有什么意义吗,谢谢大佬!
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已采纳
C++运算符重载问题,为什么重载+-运算符时operator关键字前不需要加&,重载=时operator前必须加&号啊
收起
- 写回答
- 好问题 3 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
2条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
devmiao 2018-10-31 05:30关注因为不使用&,那么堆栈上临时开辟的新对象会被释放,传回去堆栈破坏就出错了。
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容
编辑
预览

轻敲空格完成输入
- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
提交
- 2023-12-17 08:47Lyricrain的博客 时间增加减少若干(+=、-=),例:Time& operator+=(const Time&);--------加号的左结合性,当+左为“C”类对象==>调用函数operator+()时间前、后自增加/减少1秒(++、--),前自增例:Time& operator++();调用时括号...
- 2020-05-08 03:57Summer丶snow的博客 重载运算符是具有特殊名称的函数:保留字 operator 后接需定义的操作符符号。像任意其他函数一样,重载操作符具有返回类型和形参表,每个操作符用于内置类型都有关联的定义,当内置操作符和类型上的操作存在逻辑对应...
- 2022-01-10 11:40迅爷( •̀ ω •́ )的博客 1.对于a = b(a.operator(b))我们不希望b的值被改变,所以参数b一定有const修饰,接着为了减少空间开销,提高运行效率,用引用要比创建一个新的Point对象要好的多,所以参数的类型为const Point& 2. 对于a = b...
- 2018-12-26 13:39高祥xiang的博客 前言 本文引用于“C语言中文网”,我整理出来放在博客,方便大家共同学习。所有知识点和代码均已亲测可用,如有...4. C++运算符重载为友元函数 5. C++实现可变长度的动态数组 6. C++重载<<和>...
- 2022-10-05 16:01真的没事鸭的博客 C++运算符重载详解
- 2022-11-11 03:42橙予清的zzz~的博客 C++ 前后置++、--、运算符的重载函数讲解
- 2024-12-11 12:26嵌入式园姐的博客 本章内容带领大家学习C++的运算符重载,了解C++运算符重载的应用场景和书写方式。
- 2024-06-21 06:20wkd_007的博客 本文主要介绍了为什么需要重载运算符,重载运算符有哪些限制,怎样声明、定义运算符函数,怎样将运算符重载为友元函数。
- 2024-04-17 17:04东洛的克莱斯韦克的博客 狂敲键盘,只为博君一笑
- 2018-06-11 08:40liitdar的博客 operator是C++的一个关键字,它和运算符(如“=”)一起使用,表示一个运算符重载函数,在理解时可将operator和待重载的运算符整体(如“operator=”)视为一个函数名。使用operator重载运算符,是C++扩展运算符功能...
- 2025-03-08 03:06不想写笔记的博客 在C++编程中,运算符重载是体现语言灵活性的重要特性之一。它允许开发者赋予自定义类型与内置类型相似的操作体验,例如让两个自定义类对象直接使用进行相加,或是通过>>实现智能输入。能力越大,责任越大。在享受C++...
- 2022-09-24 13:04"opreator-override.zip_override+c++_运算符重载"这个压缩包文件,显然包含了关于C++运算符重载的详细信息,特别是如何通过`override`关键字来更精确地控制重载。 首先,运算符重载并不是创建新的运算符,而是给已...
- 2022-07-28 02:33就要 宅在家的博客 运算符重载是C++的一个重要特性。有了运算符重载,在代码编写时能更好的实现封装。 一.运算符重载介绍 ...因为当我们需要运算符重载时,往往是类中一种特殊的类型需要处理或者类本身需要处理。就像我们可能会把.
- 2022-07-04 02:39wodownload2的博客 class Person { public: Person& operator++() { ++i; return *this; } const Person operator++(int) { Person temp = *this; ++(*this); return temp; } Person& operator+=(int delta) { i +...
- 2020-08-31 09:58C++中的`operator`关键字用于实现操作符重载,这是C++语言中一个重要的特性,允许程序员自定义已有的运算符行为,以便于类对象能够更自然地进行各种操作。操作符重载使得用户定义的类型可以像基本数据类型一样进行...
- 2023-06-10 14:14Dontla的博客 返回递增之前的对象值:后置递增运算符需要在递增之前返回原始对象的值,以满足后置递增的语义。通过不同的返回值类型,前置递增和后置递增运算符的重载函数可以提供一致且符合预期的行为,与内置类型的递增操作保持...
- 2018-06-11 10:27liitdar的博客 某些情况下,当我们编写一个类的时候,并不需要为该类重载“=”运算符,因为编译系统为每个类提供了默认的赋值运算符“=”,使用这个默认的赋值运算符操作类对象时,该运算符会把这个类的所有数据成员都进行一次赋值...
- 没有解决我的问题, 去提问
联系我们(工作时间:8:30-22:00)
400-660-0108kefu@csdn.net在线客服
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司