溫馨提示×

c++ 中的 set 如何改

c++
小樊
136
2024-11-29 18:57:56
欄目: 編程語言

在 C++ 中,std::set 是一個關聯容器,它包含一組唯一的對象。要修改 std::set 中的元素,您可以使用以下方法之一:

  1. 使用 find() 函數查找元素,然后使用 erase() 函數刪除舊元素,最后使用 insert() 函數插入新元素。例如:
#include <iostream>
#include <set>

int main() {
    std::set<int> my_set = {1, 2, 3, 4, 5};

    int value_to_find = 3;
    int new_value = 6;

    auto it = my_set.find(value_to_find);
    if (it != my_set.end()) {
        my_set.erase(it);
    }

    my_set.insert(new_value);

    for (const auto& elem : my_set) {
        std::cout << elem << " ";
    }

    return 0;
}
  1. 使用 erase() 函數刪除舊元素,然后使用 insert() 函數插入新元素。例如:
#include <iostream>
#include <set>

int main() {
    std::set<int> my_set = {1, 2, 3, 4, 5};

    int value_to_erase = 3;
    int new_value = 6;

    my_set.erase(value_to_erase);
    my_set.insert(new_value);

    for (const auto& elem : my_set) {
        std::cout << elem << " ";
    }

    return 0;
}

請注意,這兩種方法都會保留 std::set 的排序和唯一性特性。如果您需要修改特定元素的值,而不是替換整個元素,您可能需要使用其他容器,如 std::mapstd::unordered_map。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女