我在 Stroustrup 的一本书中找到了这段代码:
void print_book(const vector<Entry>& book)
{
for (const auto& x : book) // for "auto" see §1.5
cout << x << '\n';
}
但是 const
似乎是多余的,因为 x
将被推断为 const_iterator
因为 book
是 const
在参数中。 const auto
真的更好吗?
最佳答案
在我看来,它看起来显式,这就是它更好的原因。因此,如果我的意思是 const
,那么我更愿意明确地编写它。它增强了局部推理,从而帮助其他人相对容易地理解代码——其他程序员不必查看book
的声明并推断出x
也是 const
。
关于c++ - 这不是 const auto& 多余的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37605492/