阅读量:79
是的,C++ 中的 set 是一种关联容器,它可以存储唯一的元素,并且这些元素会自动按键排序。你可以使用 set 的成员函数来修改其内容。
以下是一些常用的 set 成员函数:
insert():向set中插入一个元素。如果该元素已经存在,则不会插入。erase():从set中删除一个元素。如果该元素不存在,则不会报错。clear():删除set中的所有元素。size():返回set中元素的数量。find():查找set中是否存在指定元素,如果存在则返回指向该元素的迭代器,否则返回指向set末尾的迭代器。
以下是一个示例代码,演示如何使用 set 修改其内容:
#include
#include
int main() {
std::set<int> my_set = {1, 2, 3, 4, 5};
// 插入一个新元素
my_set.insert(6);
std::cout << "After inserting 6, my_set contains: ";
for (int num : my_set) {
std::cout << num class="hljs-string">" ";
}
std::cout << std class="hljs-comment">// 删除一个元素
my_set.erase(3);
std::cout << "After erasing 3, my_set contains: ";
for (int num : my_set) {
std::cout << num class="hljs-string">" ";
}
std::cout << std class="hljs-comment">// 清空 set
my_set.clear();
std::cout << "After clearing my_set, it contains: ";
for (int num : my_set) {
std::cout << num class="hljs-string">" ";
}
std::cout << std class="hljs-keyword">return 0;
}
输出结果:
After inserting 6, my_set contains: 1 2 3 4 5 6
After erasing 3, my_set contains: 1 2 4 5 6
After clearing my_set, it contains: