扫码关注官方订阅号
int getX() { return 3;} int& x = getX();//error const int& y = getX();//ok
请问,为什么第二行代码会行不通,而加个const却可以???
这篇文章解释的不错,可以看看,http://stackoverflow.com/questions/1565600/how-come-a-non-const-reference-cannot-bind-to-a-temporary-object 主要是因为getX()返回的是一个临时变量
const 只能定义的时候赋值一次,以后就不行了。 引用可以说是类似 const 的指针,但是还是稍微有点区别的。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
这篇文章解释的不错,可以看看,http://stackoverflow.com/questions/1565600/how-come-a-non-const-reference-cannot-bind-to-a-temporary-object
主要是因为getX()返回的是一个临时变量
const 只能定义的时候赋值一次,以后就不行了。
引用可以说是类似 const 的指针,但是还是稍微有点区别的。