加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 如何在内存中表示引用变量?

发布时间:2020-12-16 10:01:00 所属栏目:百科 来源:网络整理
导读:int num = 0;int *ptrNum = num;int refNum = num; 哪一个是内存表1或表2中引用变量的正确表示? 如果表2,那么为什么指针是一个对象而一个引用不是? 如果两个表示都不正确,请提供正确的表示和解释为什么引用不是对象. 解决方法 Which one is the correct re
int num = 0;
int *ptrNum = #
int &refNum = num;

enter image description here

哪一个是内存表1或表2中引用变量的正确表示?
如果表2,那么为什么指针是一个对象而一个引用不是?
如果两个表示都不正确,请提供正确的表示和解释为什么引用不是对象.

解决方法

Which one is the correct representation of reference variable in the memory-table 1 or table 2?

它既可以是,也可以不是.

在这种情况下,不需要存储对象的地址,因此表1就足够了.在另一个示例中,可能需要引用变量的地址.例如,当引用是非内联函数的参数时.

please provide a correct representation

C标准[dcl.ref] / 4的N4140草案:

It is unspecified whether or not a reference requires storage

如何存储它根本没有指定.

an explanation for why a reference isn’t an object.

同一文档将对象定义为

[intro.object] / 1

… An object is a region of storage …

如果未将引用定义为具有存储,则不将其定义为对象.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读