问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c++中为什么要函数返回引用?

发布网友 发布时间:2022-04-29 10:23

我来回答

2个回答

热心网友 时间:2022-06-26 03:55

1
c++标准中没有所谓的“c++为什么返回引用的函数的形参也必须是传引用”的规定。
2
在你的例子里(很奇怪的用法,为什么不直接
cp1
=
cp2;呢),不能去掉"&"的原因如下:
如果没了参数的"&",那么这个returnme函数所做的事情就是将cp1复制给临时对象a,
然后返回a的引用,之后相当于a
=
cp2;
再之后过了这一行,a
的生命周期完结了。
而cp1本身自然不受影响。
ps:
如果你对“生命周期”或者
返回局部对象的引用
这些概念不熟悉的话,请参阅
effective
c++(这本薄书看明白了,那
c++
区的绝大多数问题都难不住你了)

热心网友 时间:2022-06-26 03:55

1 返回变量的引用实际上相当返回变量的地址,通常是四个字节,如变量多于4个字节时,返回引用比返回值效率要快.
2 别外,返回引用另一个用处是外界可以使用这个引用改变原变量的内容,而值返回则不能修改内容.
const引用是要使用1中的效率,而防止2中外界修改这个变量的内容
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
长春小飞没有车没有房 碳钢的多久生锈 碳钢多久会生锈 碳钢多长时间会开始生锈 碳钢和铝哪个容易生锈 梦见天宫图是什么意思 光遇2023好友树解锁图鉴 光遇二级节点多少个 ...火柴小女孩》《词语手册》里有很多词语的意思的,求告知 暖融融解释 领淘通淘客助手这个软件怎么样? Matlab出现此上下文中不允许函数定义 摸摸鱼能刀人的游戏是什么 c语言里面有不有开立方根 魔法人形师怎么弄女的 c++为什么返回引用的函数的形参也必须是传引用? 魔法人形师怎么充值 C++ 里面的strcpy函数 魔法人形师怎么换成女生 请问谁知道,图像畸变校正的matlab程序 魔法人形师怎么更换性别 运用Matlab程序配准运行时提示错误如何修改 魔法人形师怎么更换人物 求一个matlab图形处理的程序加解析 魔法人型师邮箱怎么弄? 求matlab进行图像透视变换的程序 魔法人形师怎么注册? 魔法人形师怎么注册邮箱? 请问matlab中Cpcorr函数的详细说明和使用方法 matlab 问题 matlab小问题。。。 请教几个c语言问题 这个java程序求解释。为什么木有public static void main()这个主函数。??? cp2tform和imtransform结合起来怎么用 如何提现的视频数字信用卡https://resource.e-cncre 招商银行信用卡如何取现? 信用卡信用额度怎么取现 有了数字人民币,信用卡取现怎么办? qq怎么发布定时说说 qq怎么定时发布说说 如何从外网访问家用网络摄像头 远程控制家庭摄像头第一次忘添加了 手机连接家庭摄像头下载什么软件?请问我手机要连接家里摄像头么操作 非法侵入他人家庭监控摄像头是触犯法律 华为p30手机使用记录代码 为什么我在华为手机拨号输入6130查使用记录会没反应了?- 问一问 华为手机怎么查手机使用记录 不在桌面的软件怎么卸载?急!!! 华为手机有什么指令可以查询应用使用记录吗?谢谢 华为如何查看手机使用记录 华为手机使用记录怎么查?