是否可以迭代 a const vector<int>
?或者,这无论如何都是不可取的?
鉴于我有getIntVector
返回 a 的函数,vector<int>
我可以使用以下内容对其进行迭代:
vector<int> vec = getIntVector();
vector<int>::iterator it;
for (it=vec.begin();it!=vec.end();++it) {}
但我不能做以下事情:
const vector<int> vec = getIntVector();
vector<int>::iterator it;
// complier throws error below
for (it=vec.begin();it!=vec.end();++it) {}
我的想法是不会通过将向量声明为const
...来重新创建向量。