mirror of http://git.sairate.top/sairate/doc.git
2.0 KiB
2.0 KiB
-
构造函数:
set()
:创建一个空集合。set(const set& other)
:拷贝构造函数,用另一个集合初始化当前集合。
-
赋值和交换:
operator=
:将一个集合赋值给另一个集合。assign
:用特定数量的元素或范围内的元素替换集合的内容。swap
:交换两个集合的内容。
-
迭代器相关:
begin
:返回指向第一个元素的迭代器。end
:返回指向最后一个元素之后的位置的迭代器。rbegin
:返回指向最后一个元素的反向迭代器。rend
:返回指向第一个元素之前的位置的反向迭代器。
-
容量:
empty
:判断集合是否为空。size
:返回集合中元素的数量。max_size
:返回集合最大可容纳的元素数量。
-
插入和访问元素:
insert
:插入一个元素或多个元素。erase
:移除指定元素或范围内的元素。clear
:移除集合的所有元素。find
:查找指定元素的迭代器。count
:统计指定元素在集合中出现的次数。
-
其他操作:
lower_bound
:返回第一个不小于指定元素的迭代器。upper_bound
:返回第一个大于指定元素的迭代器。equal_range
:返回范围内与指定元素相等的上下界迭代器对。
下面是这些函数的示例用法:
#include <iostream>
#include <set>
using namespace std;
int main() {
// 创建空集合
set<int> myset;
// 插入元素
myset.insert(5);
myset.insert(10);
myset.insert(3);
// 查找元素
auto it = myset.find(10);
if (it != myset.end()) {
cout << "Element found: " << *it << endl;
}
// 统计元素个数
int num = myset.count(5);
cout << "Number of 5s: " << num << endl;
// 移除元素
myset.erase(3);
// 输出元素
for (auto& num : myset) {
cout << num << " ";
}
cout << endl;
return 0;
}