C++ 中的 std::set
是一种关联容器,它包含一组唯一的对象。当你向 std::set
中插入元素时,它会自动对元素进行排序,以便它们保持有序。std::set
的大小(即元素数量)会随着元素的插入而增加,当元素被删除时,大小会相应地减少。
如果你想要在运行时改变 std::set
的大小,你可以使用 std::set::insert
和 std::set::erase
成员函数来插入和删除元素。这将导致 std::set
的大小发生变化。然而,需要注意的是,std::set
是一个动态数组,它会根据需要自动调整其内部存储空间。因此,你不需要担心内存分配和重新分配的问题。
以下是一个简单的示例,展示了如何使用 std::set
:
#include <iostream>
#include <set>
int main() {
std::set<int> my_set = {1, 2, 3, 4, 5};
std::cout << "Initial size: " << my_set.size() << std::endl;
my_set.insert(6); // 添加一个新元素,大小增加
std::cout << "Size after insertion: " << my_set.size() << std::endl;
my_set.erase(3); // 删除一个元素,大小减少
std::cout << "Size after erasure: " << my_set.size() << std::endl;
return 0;
}
输出:
Initial size: 5
Size after insertion: 6
Size after erasure: 5