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

c – 为什么引用变量需要在声明时初始化

发布时间:2020-12-16 10:14:03 所属栏目:百科 来源:网络整理
导读:这是一个非常简单的问题,我有一个疑问,我想问每个人, 我们知道我们可以将参考声明为 int bar;int foo = bar; 我的问题是这个初始化背后的原因是什么?为什么这是必须的? 另外为什么我不需要在声明时初始化指针? int bar;int *p;p = bar; 解决方法 根据定义
这是一个非常简单的问题,我有一个疑问,我想问每个人,

我们知道我们可以将参考声明为

int bar;
int &foo = bar;

我的问题是这个初始化背后的原因是什么?为什么这是必须的?
另外为什么我不需要在声明时初始化指针?

int bar;
int *p;
p = &bar;

解决方法

根据定义,引用必须引用有效对象或POD类型.不允许未初始化,特别是没有任何内容.此外,一旦初始化,它不能更改为引用其他东西.因此,初始化它的唯一地方是声明(或者如果它是成员变量,类构造函数的初始化列表).

其他语言允许空引用和重新分配引用,但这不是它们在C中的工作方式.

(编辑:李大同)

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

    推荐文章
      热点阅读