关于常量引用
本身,引用是对对象的引用。
常量引用,是不可通过该引用对绑定的对象进行修改,意思是,绑定的对象也许可以修改,也许不可以修改。
定义引用时,一定要给出绑定的对象,之后,不可修改绑定的对象;此时,绑定对象的类型和引用对象的类型要求严格匹配。
而常量引用初始化时,可以使用非常量的对象、字面值,甚至是表达式,而且,只要其可以转换为引用的对象类型即可。
但是,如果常量引用的对象类型和绑定的对象类型一致,常量引用确实是绑定到给定对象;
可如果存在需要转换的情况,此时,会另辟一块内存存放转换的结果,引用绑定到这块内存;当给出的对象发生修改时,内存内容不变。
#include <iostream> using namespace std; int main() { double dval = 3.14; const int &ri = dval; cout << ri << endl; dval = 5.78; cout << ri << endl; int a = 5; const int &ra = a; cout << ra << endl; a = 6; cout << ra << endl; return 0; }
posted on 2022-03-18 15:01 toughcactus 阅读(233) 评论(0) 编辑 收藏 举报