本文概述
设置介绍集合是C ++ STL(标准模板库)的一部分。集合是存储排序键的关联容器, 其中每个键都是唯一的, 可以插入或删除但不能更改。
句法
template <
class T, // set::key_type/value_typeclass Compare = less<
T>
, // set::key_compare/value_compareclass Alloc = allocator<
T>
// set::allocator_type>
class set;
参数T:存储在容器集中的元素类型。
比较:比较类, 它接受两个相同类型的布尔变量, 并返回一个值。此参数是可选的, 二进制谓词less <
T>
是默认值。
Alloc:用于定义存储分配模型的分配器对象的类型。
会员职能
【C++ STL集合set】以下是set的所有成员函数的列表:
建造者/毁灭者
功能 |
描述 |
(constructor) |
Construct set |
(destructor) |
设置析构函数 |
operator= |
将集合的元素复制到另一个集合。 |
迭代器
功能 |
描述 |
Begin |
返回指向集合中第一个元素的迭代器。 |
cbegin |
返回指向集合中第一个元素的const迭代器。 |
End |
返回指向末尾的迭代器。 |
Cend |
返回指向末尾的常量迭代器。 |
rbegin |
返回指向末尾的反向迭代器。 |
Rend |
返回指向起点的反向迭代器。 |
crbegin |
返回指向末尾的常量反向迭代器。 |
Crend |
返回指向起点的常量反向迭代器。 |
容量
功能 |
描述 |
empty |
如果set为空, 则返回true。 |
Size |
返回集合中的元素数。 |
max_size |
返回集合的最大大小。 |
修饰符
功能 |
描述 |
insert |
在集合中插入元素。 |
Erase |
从集合中擦除元素。 |
Swap |
交换集合的内容。 |
Clear |
删除集合中的所有元素。 |
emplace |
构造新元素并将其插入到集合中。 |
emplace_hint |
通过提示构造新元素并将其插入到集合中。 |
观察者
功能 |
描述 |
key_comp |
返回键比较对象的副本。 |
value_comp |
返回值比较对象的副本。 |
运作方式
功能 |
描述 |
Find |
搜索具有给定键的元素。 |
count |
获取与给定键匹配的元素数。 |
lower_bound |
返回迭代器的下限。 |
upper_bound |
返回一个迭代器到上限。 |
equal_range |
返回与给定键匹配的元素范围。 |
分配者
功能 |
描述 |
get_allocator |
返回用于构造集合的分配器对象。 |
非成员重载函数
功能 |
描述 |
operator== |
检查两组是否相等。 |
operator!= |
检查两组是否相等。 |
operator<
|
检查第一组是否小于其他组。 |
operator<
= |
检查第一组是否小于或等于其他。 |
operator>
|
检查第一个集合是否大于其他集合。 |
operator>
= |
检查第一个集合是否大于其他集合。 |
swap() |
交换两组元素。 |
推荐阅读