c++中iterator迭代器
时间: 2024-01-03 08:20:27 浏览: 117
C++中的迭代器是一种指针类别,它可以遍历容器中的元素。迭代器提供了一种通用的方法来访问容器中的元素,而不必关心容器的类型。以下是迭代器的一些常见用法:
1.使用begin()和end()函数获取迭代器的起始和结束位置:
```c++
vector<int> ivec = {1, 2, 3, 4, 5};
vector<int>::iterator begin_iter = ivec.begin(); // 获取起始位置迭代器
vector<int>::iterator end_iter = ivec.end(); // 获取结束位置迭代器
```
2.使用迭代器遍历容器中的元素:
```c++
vector<int> ivec = {1, 2, 3, 4, 5};
for (vector<int>::iterator iter = ivec.begin(); iter != ivec.end(); ++iter) {
cout << *iter << " "; // 输出:1 2 3 4 5
}
```
3.使用迭代器修改容器中的元素:
```c++
vector<int> ivec = {1, 2, 3, 4, 5};
vector<int>::iterator iter = ivec.begin();
*iter = 6; // 修改第一个元素的值为6
cout << ivec[0] << endl; // 输出:6
```
4.使用const_iterator迭代器遍历容器中的元素,但不能修改元素的值:
```c++
const vector<int> ivec = {1, 2, 3, 4, 5};
for (vector<int>::const_iterator iter = ivec.begin(); iter != ivec.end(); ++iter) {
cout << *iter << " "; // 输出:1 2 3 4 5
}
```
阅读全文