C++ STL Set集合

C++ STL Set集合

集合简介

集合C++ STL(标准模板库)的一部分。集合是关联容器,它存储排好序的键,其中每个键都是唯一的,可以插入或删除,但不能修改。

语法

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 :容器集合中存储的元素类型。

Compare :比较类,接受两个相同类型的参数 bool,并返回一个值。此参数是可选的,默认值为二元谓词less

Alloc :分配器对象的类型,用于定义存储分配模型。

成员函数

以下是set的所有成员函数的列表:

构造函数/析构函数

功能 描述
(constructor) 构造集合
(destructor) 设置析构函数
operator= 将集合的元素复制到另一个集合中。

迭代器

功能 描述
Begin 返回指向集合中第一个元素的迭代器。
cbegin 返回指向集合中第一个元素的常量迭代器。
End 返回指向末尾位置的迭代器。
Cend 返回指向末尾位置的常量迭代器。
rbegin 返回指向末尾位置的反向迭代器。
Rend 返回指向开始位置的反向迭代器。
crbegin 返回指向末尾位置的常量反向迭代器。
Crend 返回指向开始位置的常量反向迭代器。

容量

函数 描述
empty 如果集合为空,则返回 true。
Size 返回集合中元素的数量。
max_size 返回集合的最大大小。

修改符

函数 描述
insert 在集合中插入元素。
Erase 从集合中删除元素。
Swap 交换集合的内容。
Clear 删除集合中的所有元素。
emplace 构造并将新元素插入集合中。
emplace_hint 构造并按提示将新元素插入集合中。

观察者

Functions Description
key_comp 返回键值比较对象的副本。
value_comp 返回值比较对象的副本。

操作

函数 描述
Find 查找具有给定键的元素。
count 获取与给定键匹配的元素数量。
lower_bound 返回下界的迭代器。
upper_bound 返回上界的迭代器。
equal_range 返回与给定键匹配的元素范围。

分配器

函数 描述
get_allocator 返回用于构造集合的分配器对象。

非成员重载函数

函数 描述
operator 检查两个集合是否相等。
operator!= 检查两个集合是否不相等。
operator< 检查第一个集合是否小于其他集合。
operator<= 检查第一个集合是否小于等于其他集合。
operator> 检查第一个集合是否大于其他集合。
operator>= 检查第一个集合是否大于等于其他集合。
swap() 交换两个集合的元素。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程