gpt4 book ai didi

c++ - 'const&' 在 C++ 中是什么意思?

转载 作者:可可西里 更新时间:2023-11-01 14:53:55 26 4
gpt4 key购买 nike

对此表示歉意,我是一名正在尝试学习 C++ 的学生,我只是认为问比不知道要好。

我理解运算符 & 的“地址”和 const 关键字分别意味着什么。但是当我阅读一些示例代码时,我看到了 const&,我只是想知道它是什么意思。

它用于代替函数原型(prototype)中的参数,例如:

void function (type_Name const&);

如果只使用其中一个我会理解,但我在这里有点困惑,所以一些专业的见解会很好。

最佳答案

C++ 中的类型是从右到左阅读的。不方便的是,这恰恰是我们喜欢阅读单个单词的相反方向。但是,当试图决定像 constvolatile 这样的限定符适用于什么时,将限定符始终放在右边可以使类型更容易阅读。例如:

  • int* const 是指向 [non-const] int
  • const 指针
  • int const* 是指向 const int
  • 的 [non- const] 指针
  • int const* const 是指向 const int
  • const 指针

然而,无论历史上发生了什么不幸的事故,都发现允许将顶级 const 写在左边是合理的,即 const intint const 是绝对等价的。当然,尽管 const 明显正确地放置在类型的右侧,使类型易于阅读并且位置一致,但许多人认为顶级 const 应该写在左边。

关于c++ - 'const&' 在 C++ 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19415674/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com