vector 正向迭代器与反向迭代器之间进行比较的例子
时间: 2024-06-15 07:07:05 浏览: 227
vector是C++标准库中的一个容器,它可以动态地存储一组元素,并提供了方便的操作方法。正向迭代器和反向迭代器是vector容器提供的两种迭代器,它们可以用来遍历vector中的元素。
正向迭代器用于从vector的第一个元素开始,逐个访问到最后一个元素。而反向迭代器则相反,从vector的最后一个元素开始,逐个访问到第一个元素。
下面是一个比较正向迭代器和反向迭代器的例子:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
// 使用正向迭代器遍历vector
std::cout << "正向遍历:";
for (auto it = vec.begin(); it != vec.end(); ++it) {
std::cout << *it << " ";
}
std::cout << std::endl;
// 使用反向迭代器遍历vector
std::cout << "反向遍历:";
for (auto rit = vec.rbegin(); rit != vec.rend(); ++rit) {
std::cout << *rit << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果为:
```
正向遍历:1 2 3 4 5
反向遍历:5 4 3 2 1
```
在上面的例子中,我们使用了正向迭代器`vec.begin()`和`vec.end()`来遍历vector的元素,以及反向迭代器`vec.rbegin()`和`vec.rend()`来反向遍历vector的元素。通过比较迭代器的值是否相等,我们可以确定是否遍历到了vector的末尾。
阅读全文