一、使用iterator遍历
C++为每一个STL模板容器提供了一个iterator(指针),用于遍历容器。使用之前要实例化为具体类型:
int a[6] = {12,19,45,67,99,2};
vector<int ,allocator<int>> vi(a,a+6);
vector<int>::iterator it = vi.begin();
for(;it!=vi.end();it++){
cout<<*it<<endl;
}
return 0;
也可以配合C++11提供的类型推导,更方便一点:
int main(){
int a[6] = {12,19,45,67,99,2};
vector<int ,allocator<int>> vi(a,a+6);
auto it = vi.begin();
for(;it!=vi.end();it++){
cout<<*it<<endl;
}
return 0;
}
二、使用C++11提供的遍历方法
for(ele in clo){
}
int a[6] = {12,19,45,67,99,2};
vector<int ,allocator<int>> vi(a,a+6);
for(auto ele : vi){
cout<<ele<<endl;
}
return 0;
int main(){
int a[6] = {12,19,45,67,99,2};
vector<int ,allocator<int>> vi(a,a+6);
for(auto &ele : vi){ //取每个元素的引用类型,乘以2;
ele = ele*2;
cout<<ele<<endl;
}
return 0;
}