【发布时间】:2023-06-17 18:39:01
【问题描述】:
我正在寻找有关如何做某事的示例,并看到了这两个变体:
std::string const &s;
const std::string &s;
在不同的sn-ps中。
谢谢你的回答:)
【问题讨论】:
-
语义上没有区别。只是一个人喜欢哪种风格的问题。
-
在第一个
s是对常量字符串的引用。第二个s是对常量字符串的引用。 IE。两者其实是一样的。 -
第一个更一致(const 总是在它所指的类型后面,这是它对指针起作用的唯一方式)。第二种更为常见。第一个允许您从右到左阅读声明:s 是对不可变 std::string 的引用。
-
在去除符号时,您经常会看到 const 限定的第一种形式 - 例如,
c++filt。
标签: c++ c++11 reference constants notation