一个指针存储/分配一个内存地址;
引用变量呢?
它像 Stack 上的任何其他非指针简单变量一样存储对象的实际值?
谢谢!
最佳答案
引用本身不包含任何内容。 C++ 标准甚至声明不需要实现为引用分配任何存储空间。它实际上只是它引用的对象或函数的别名。尝试获取引用的值将获取它引用的对象或函数的值(在这种情况下,您将获得一个函数指针,就像您尝试使用其原始名称从函数中获取值一样),相反。
当然,当您进入较低级别并查看汇编代码时,引用就像指针一样。但在语言层面,他们是完全不同的野兽。例如,对 const 的引用可以绑定(bind)到临时对象,它们需要实现复制构造函数以重载运算符,并且不能将它们放入数组中(即使你初始化它的所有元素也不能),因为引用不是对象(与指针相反)。它们是引用类型,尽管听起来可能微不足道。
关于c++ - C++ 中的引用变量存储什么值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/412084/