C++ STL Set

Set 是 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:一个比较类,它接受两个相同类型的参数并返回一个值。该参数是可选的,默认值为二元谓词 less<T>。

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

成员函数

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

构造函数/析构函数

函数描述
(constructor)构造 set。
(destructor)Set 的析构函数。
operator=将 set 的元素复制到另一个 set。

迭代器

函数描述
begin()返回指向 set 第一个元素的迭代器。
cbegin()返回指向 set 第一个元素的 const 迭代器。
end()返回指向尾后元素的迭代器。
cend()返回指向尾后元素的 const 迭代器。
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()按给定的键搜索元素。
find()按给定的键搜索元素。
count()获取与给定键匹配的元素数量。
lower_bound()返回一个指向下限的迭代器。
upper_bound()返回一个指向上限的迭代器。
equal_range()返回与给定键匹配的元素范围。

分配器

函数描述
get_allocator()返回用于构造 set 的分配器对象。

非成员重载函数

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

标签: C++语言, C++语言教程, C++语言技术, C++语言学习, C++语言学习教程, C++语言下载, C++语言开发, C++语言入门教程, C++语言进阶教程, C++语言高级教程, C++语言面试题, C++语言笔试题, C++语言编程思想