首页  >  文章  >  后端开发  >  C 中的常量引用:类型说明符之前还是之后?

C 中的常量引用:类型说明符之前还是之后?

Barbara Streisand
Barbara Streisand原创
2024-11-24 10:02:12242浏览

Const Reference in C  : Before or After the Type Specifier?

C 中的常量引用:类型说明符之前与之后的放置

在 C 中,在处理常量引用时,会出现一个问题: const 关键字相对于类型说明符的放置:之前还是之后?让我们检查一下这两种形式的语法和行为。

语法:

  • 类型说明符之前的常量引用:

    int foo1(const Fred &arg) {
    ...
    }
  • 类型后的常量引用说明符:

    int foo2(Fred const &arg) {
    ...
    }

行为:

两种语法都会产生相同的行为。该语言对待 const T&和 T const&作为等效类型。这适用于指针和引用声明。

风格注意事项:

虽然两个放置选项之间没有功能差异,但风格偏好有所不同。然而,对于更喜欢 const T& 也有一些争论。 (和 const T*):

  • 与标准文本的一致性: const T&是 Bjarne Stroustrup 所著的 C 编程语言书籍和 C 标准本身中使用的样式。
  • 普遍存在: const T&/const T* 根据经验在 C 和 C 代码中更常见比它的替代位置。
  • 解析歧义:放错位置星号与 T const* 是一个潜在的问题,而 const* T 不是有效的语法。

经常引用的从右到左的解析规则支持将 const 放在类型说明符之后可能是主观的。常量 T&也可以从右到左解析为“对 T 常量的引用。”

以上是C 中的常量引用:类型说明符之前还是之后?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn