c++中的iterator
时间: 2024-01-03 09:49:51 浏览: 63
C++ Iterator模式
在C++中,迭代器(iterator)是指向容器(例如数组、向量、链表等)中元素的指针或类似于指针的对象。迭代器提供了访问容器元素的统一接口,使得用户可以使用相同的方式来遍历不同类型的容器。
C++标准库提供了多种类型的迭代器,包括随机访问迭代器、双向迭代器、前向迭代器和输入/输出迭代器。这些迭代器可以通过STL算法来进行遍历、查找、排序等操作。
在使用迭代器时,通常需要使用迭代器的自增(++)和解引用(*)操作符。自增操作符用于将迭代器指向下一个元素,解引用操作符则用于获取当前迭代器指向的元素的值。
例如,以下代码演示了使用迭代器遍历一个向量并输出其中的元素:
```
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
// 使用迭代器遍历向量并输出元素
for (auto it = vec.begin(); it != vec.end(); ++it) {
std::cout << *it << " ";
}
return 0;
}
```
输出结果为:1 2 3 4 5。在这个例子中,使用了向量的begin()和end()方法获取迭代器,然后使用for循环和迭代器遍历向量并输出元素。
阅读全文