在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
等。