为啥要返回一个const型引用

赋值语句的左值必须是一个能够提供一块相对来说永久性的内存的地址的。那么什么样的值可以作为右值呢?答案是只要有值就行,甚至可以是临时性质的值。

你可以给一个函数的返回值赋值吗?就是这个函数的返回值作为左值,另一个数值作为右值。答案是可以的。如下图所示:



但是如果是const型引用的返回值的话,就不能通过编译了。



还有就是你不能把一个const引用型返回值赋给一个非const引用型的形参。

在string类当中定义了一个转化,它是char *和string之间的转换,这样的话,string对象就可以转换成C风格字符串。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容