-1
std::vector<T> const &
和const std::vector<T> &
有什么区别?Const Reference的不同风味?
我已经习惯了const T &
,但是这个“T const &
”与我不同。
并原谅我的无知。
std::vector<T> const &
和const std::vector<T> &
有什么区别?Const Reference的不同风味?
我已经习惯了const T &
,但是这个“T const &
”与我不同。
并原谅我的无知。
他们是完全平等的。
#include <vector>
void f(std::vector<int> const &) {}
void f(const std::vector<int> &) {} // error: redefinition
没有区别,我喜欢用第一形式,有些人喜欢第二:
您可以通过尝试编译下面的代码,看看编译器如何抱怨的重新定义验证这一点。这也是正确的'const std :: vector const&'和上面一样。 –
@RichardCritten:不,这是一个语法错误:'duplicate'const'' –
@Richard Critten:在C++中不允许直接应用两次相同的限定符(如您的示例中所示)。 – AnT