中的论点有什么区别:
int foo1(const Fred &arg) { ... }
和
int foo2(Fred const &arg) { ... }
? 我没有在 parashift FAQ 中看到这个案例。
没有区别,因为 const 相对于 & 是从右到左读取的,因此两者都表示对不可变 Fred 实例的引用。
Fred& const意味着引用本身是不可变的,这是多余的;在处理const 指针Fred const*时,两者 Fred* const都有效但不同。
Fred& const
Fred const*
Fred* const
这是风格问题,但我更喜欢const用作后缀,因为它可以一致地应用,包括const member functions。
const