小编典典

C++:常量引用,在类型说明符之前 vs 之后

all

中的论点有什么区别:

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

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

? 我没有在 parashift FAQ 中看到这个案例。


阅读 66

收藏
2022-08-05

共1个答案

小编典典

没有区别,因为 const
相对于 & 是从右到左读取的,因此两者都表示对不可变 Fred 实例的引用。

Fred& const意味着引用本身是不可变的,这是多余的;在处理const
指针
Fred const*时,两者 Fred* const都有效但不同。

这是风格问题,但我更喜欢const用作后缀,因为它可以一致地应用,包括const member
functions

2022-08-05