返回信息流【 在 qinwang 的大作中提到: 】
: 引用是对象的别名,这个“别名”到底是什么意思呢?底层是怎么实现的呢?
: 我感觉引用 底层的实现 其实就是 常量指针。
: 即:
: ...................
你写错了吧?
这是一条镜像帖。来源:北邮人论坛 / cpp / #25996同步于 2009/7/9
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
Re: 引用是对象的别名,这个“别名”到底是什么意思呢?底层是
LOVEBABY
2009/7/9镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
int a;
int &b=a;
int * const pi=&a;
b是a的别名,在编译阶段a和b完全没区别。
a和b指示内存中的同一个存储单元。
就像一个人可以有几个个名字,
朋友管他叫张飞,陌生人叫他张三,
指的是同一个人。
pi是一个指针常量,即pi被初始化为a的存储单元的地址,且不能指向其它位置。
真是这样的啊?我一直觉得像
【 在 sunmoonstar (摔锅啦) 的大作中提到: 】
: int a;
: int &b=a;
: int * const pi=&a;
: ...................
我google了下,有人就是这么说的
【 在 qinwang (qinwang) 的大作中提到: 】
: 我明白是别名,也知道一个变量确实可以有几个别名,
: 我想知道的是 引用 的 底层实现。。。
: 我感觉是 常量指针 实现的。。。
: ...................
【 在 sunmoonstar 的大作中提到: 】
: int a;
: int &b=a;
: int * const pi=&a;
: ...................
引用实质就是一个指针
同一作用域下可能会被直接优化成变量本身,但是如果作为参数呢