C++ SET基础教程文档
收录于 2023-04-20 00:10:05 · بالعربية · English · Español · हिंदीName · 日本語 · Русский язык · 中文繁體
简介
Sets是 C++ STL的一部分(标准模板库)。SET合是存储排序键的关联容器,其中每个键都是唯一的,可以插入或删除但不能更改。
语法
template < class T, // set::key_type/value_type class Compare = less<T>, // set::key_compare/value_compare class Alloc = allocator<T> // set::allocator_type > class set;
参数
T : 存储在容器SET中的元素类型。
Compare : 一个比较类,它接受两个具有相同bool类型的参数并返回一个值。该参数是可选的,并且二进制谓词less 是默认值。
Alloc : 用于定义存储分配模型的分配器对象的类型。
成员函数
以下是SET合的所有成员函数的列表:
构造函数/析构函数
功能 | 说明 |
(构造函数) | 构造SET |
(析构函数) | 析构函数 |
operator= | 将SET合的元素复制到另一个SET合。 |
迭代器
功能 | 说明 |
Begin | 返回指向SET合中第一个元素的迭代器。 |
cbegin | 返回指向SET合中第一个元素的const迭代器。 |
End | 返回指向末尾的迭代器。 |
Cend | 返回一个指向末尾的常量迭代器。 |
rbegin | 返回指向结尾的反向迭代器。 |
Rend | 返回指向起点的反向迭代器。 |
crbegin | 返回一个指向末尾的常量反向迭代器。 |
Crend | 返回指向起点的常量反向迭代器。 |
容量
功能 | 说明 |
empty | 如果set为空,则返回true。 |
Size | 返回SET合中的元素数量。 |
max_size | 返回SET合的最大大小。 |
修饰符
功能 | 说明 |
insert | 将元素插入SET合中。 |
Erase | 从SET合中擦除元素。 |
Swap | 交换SET合的内容。 |
Clear | 删除SET合中的所有元素。 |
emplace | 构造并将新元素插入到SET合中。 |
emplace_hint | 通过提示构造并将新元素插入到SET合中。 |
观察者
功能 | 说明 |
key_comp | 返回键比较对象的副本。 |
value_comp | 返回值比较对象的副本。 |
操作
功能 | 说明 |
Find | 搜索具有给定键的元素。 |
count | 获取与给定键匹配的元素数。 |
lower_bound | 将迭代器返回到下限。 |
upper_bound | 将迭代器返回上限。 |
equal_range | 返回与给定键匹配的元素的范围。 |
分配器
功能 | 说明 |
get_allocator | 返回用于构造SET合的分配器对象。 |
非成员重载函数
功能 | 说明 |
operator== | 检查两组是否相等。 |
operator!= | 检查两组是否相等。 |
operator< | 检查第一组是否少于其他组。 |
operator<= | 检查第一个SET合是否小于或等于其他SET合。 |
operator> | 检查第一个SET合是否大于其他SET合。 |
operator>= | 检查第一个SET合是否大于其他SET合。 |
swap() | 交换两组元素。 |