在C++中,要修改迭代器所指向的值,您需要使用迭代器自身的解引用操作符 *
。这里有一个简单的例子,说明如何使用迭代器修改容器中的元素:
#include <iostream>
#include <vector>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
// 获取向量的迭代器,指向第一个元素
std::vector<int>::iterator it = numbers.begin();
// 使用解引用操作符修改迭代器指向的值
*it = 10;
// 输出修改后的向量
for (const auto &num : numbers) {
std::cout << num << " ";
}
return 0;
}
在这个例子中,我们首先创建了一个包含整数的向量 numbers
。然后,我们获取了向量的迭代器 it
,并让它指向第一个元素。接下来,我们使用解引用操作符 *
修改了迭代器指向的值。最后,我们遍历并输出修改后的向量。
需要注意的是,迭代器只能用于访问和修改容器中的元素,而不能用于修改容器的结构(如添加、删除元素等)。要修改容器的结构,您需要使用容器的成员函数,如 push_back
、erase
等。