const 引用:C 中类型说明符之前与之后的放置
在 C 中,可以选择将 const 引用说明符 (const Fred&) 放置在之前还是之后类型说明符 (Fred const&)。尽管它们在语义上看起来相同,但放置位置可能具有风格含义。
语义等效
语法上,const Fred& 和 Fred const& 表示相同的类型:对 Fred 对象的常量引用。编译器可以互换地解释它们,从而消除任何语义差异。
风格偏好
但是,虽然语义上无关紧要,但在风格方面存在偏好分歧。一些程序员喜欢将 const 放在类型说明符 (const Fred&) 之前,理由是它与 C 编程语言书籍和 C 标准保持一致。其他人主张后类型说明符放置 (Fred const&),从 K&R 的《C 编程语言》和 C 标准中使用的风格中汲取灵感。
const Fred&
遵循 Stroustrup 在他的 C 书中采用的风格。- 遵循 C 语言中使用的风格标准。
-
Fred const&
与 K&R 的开创性 C 书籍中使用的语法保持一致。- 镜像 C 标准中采用的风格。
- 可以降低
- 字符放错位置的风险,例如T const 而不是 const* T.
解析注意事项
从右到左的解析规则通常会影响样式选择。然而,值得注意的是 const Fred& 也可以从右到左进行有意义的解析:对常量 Fred 对象的引用。此外,如果将 Fred const* 解释为“指向 T 的指针常量”而不是“指向常量 T 的指针”,则可能会产生歧义。
结论
最终,const Fred& 和 Fred const& 之间的选择会发生变化取决于个人喜好。然而,考虑到 C 和 C 社区中既定的惯例,const Fred& 的受欢迎程度似乎略有优势。
以上是const Fred& 或 Fred const&:C 中首选哪个位置?的详细内容。更多信息请关注PHP中文网其他相关文章!