C++ 的 std::set
容器不能直接修改元素值,因為它的元素是唯一的且按照升序排列。但是,你可以通過迭代器(iterator)來訪問和修改 std::set
中的元素。
以下是一個示例,展示了如何使用迭代器在 std::set
中查找并修改元素值:
#include <iostream>
#include <set>
int main() {
std::set<int> my_set = {1, 2, 3, 4, 5};
// 使用迭代器查找元素
auto it = my_set.find(3);
if (it != my_set.end()) {
// 修改元素值
*it = 10;
}
// 輸出修改后的集合
for (const auto& elem : my_set) {
std::cout << elem << " ";
}
return 0;
}
在這個示例中,我們首先創建了一個包含整數的 std::set
。然后,我們使用 find
函數查找值為 3 的元素。如果找到了該元素,我們使用迭代器 it
解引用并修改其值。最后,我們遍歷并輸出修改后的集合。