首页 > 后端开发 > C++ > 为什么不能重置 C 引用?

为什么不能重置 C 引用?

Barbara Streisand
发布: 2024-11-30 20:02:19
原创
1025 人浏览过

Why Can't C   References Be Reset?

为什么 C 中的引用不可重置

C 引用与指针不同,遵循两个基本特征:它们必须始终引用同一个对象并且不能为空。虽然指针在指向不同对象方面提供了灵活性,并且可以设置为 null,但 C 缺乏“不可为 null、可重新安装的引用或指针”的概念。这就提出了为什么引用不能重置的问题。

Felix Nievelstein 最初提出了这个问题,强调使用引用来确保对象之间的关联保持有效。然而,根据 C 的设计者 Bjarne Stroustrup 的说法,引用不变性的主要原因是为了避免潜在的歧义和错误。

用 Stroustrup 的话来说,“我过去有被 Algol68 引用咬伤,其中 r1=r2 可以通过 r1 分配给所引用的对象,或者为 r1 分配新的引用值(重新绑定 r1)取决于 r2 的类型。我想在 C 中避免此类问题。”

通过禁止引用重新绑定,C 旨在消除不确定性和无意中更改引用目标对象的风险。这种设计决策确保引用始终指向同一对象,防止意外后果并保持程序正确性。

以上是为什么不能重置 C 引用?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板