介绍
在C++中,迭代器与STL其它容器联合使用时,可以提供一种遍历的方法,区别于其它形式的遍历,使用迭代器在书写思路上较为容易。
使用方法
普通迭代器
这种迭代器支持iter++、iter–等操作,同样支持iter+=2但是需要注意越界(不建议使用+=2等容易越界的操作)。
vector<int>::iterator iter = nums.begin();
for (; iter != nums.end(); iter++) {
cout << *iter << " ";
}
常量迭代器
常量迭代器不允许通过*iter来修改所指向的值,当不需要修改数值时最好采用常量迭代器。begin和end对应为cbegin和cend。
//常量迭代器
vector<int>::const_iterator iter = nums.cbegin();
for (; iter != nums.cend(); iter++) {
cout << *iter << " ";
}
反向迭代器
反向迭代器的begin指向数组的最后一个元素,与正向的迭代器相反。begin和end对应为rbegin和rend。
vector<int>: