C++ for循环与迭代器

Scroll Down

1.基本的for循环

std::vector<int> arr;
...
for(std::vector<int>::iterator it=arr.begin();!=arr.end();it++){
...       
}

2.使用auto关键字

std::vector<int> arr;
...
for(auto it = arr.begin();it != arr.end();it++){
...
}

3.使用c++11 for循环新特性

std::vector<int> arr;
...
//注意此处的 n 得类型为 arr容器的value_type,即auto自动推导出vector中为int类型,n为arr中的值。
for(auto n : arr){
...//如果上面arr类型为std::map<std::string,int>,获取arr的string值n.first,获取arr的int值n.second。
}