c – 引用在内存中创建新位置还是现有单元格的别名?

c – 引用在内存中创建新位置还是现有单元格的别名?,第1张

概述这个问题在这里已经有一个答案:            >             Is there any way to find the address of a reference?                                    8 我正在学习指针和引用,我的问题是指 this的解释,特别是以下部分: 这表明声明int& ri = i创建一个新的存储单元,其值为& i并 这个问题在这里已经有一个答案:> Is there any way to find the address of a reference?8
我正在学习指针和引用,我的问题是指 this的解释,特别是以下部分:

这表明声明int& ri = i创建一个新的存储单元,其值为& i并存在于未知内存位置.

为了测试这个理论,我写了一个简单的例子,结果如下:

我感到困惑的是,我和我有相同的记忆地址,这似乎与读数相矛盾.结果表明,int& ri = i松散地意味着“为存储单元i创建一个别名,并将其称为”r“,这两个都指的是完全相同的单元格.

文件是正确的,还是我错过了什么?

解决方法 由于r是对i的引用,所以r上的所有 *** 作都由编译器转换为对i的 *** 作.这样做& r,给你我所在的内存地址.

(注意,与指针不同,引用在声明后不具有“重新引用”的属性 – 它们总是引用相同的东西 – 所以没有办法编写在引用上 *** 作的 *** 作,而不是在引用的引用上“)

总结

以上是内存溢出为你收集整理的c – 引用在内存中创建新位置还是现有单元格的别名?全部内容,希望文章能够帮你解决c – 引用在内存中创建新位置还是现有单元格的别名?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1255052.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存