- C 标准库
- C 标准库
- C++ 标准库
- C++ 库 - 主页
- C++ 库 - <fstream>
- C++ 库 - <iomanip>
- C++ 库 - <ios>
- C++ 库 - <iosfwd>
- C++ 库 - <iostream>
- C++ 库 - <istream>
- C++ 库 - <ostream>
- C++ 库 - <sstream>
- C++ 库 - <streambuf>
- C++ 库 - <原子>
- C++ 库 - <复杂>
- C++ 库 - <异常>
- C++ 库 - <功能>
- C++ 库 - <限制>
- C++ 库 - <语言环境>
- C++ 库 - <内存>
- C++ 库 - <新>
- C++ 库 - <数字>
- C++ 库 - <正则表达式>
- C++ 库 - <stdexcept>
- C++ 库 - <字符串>
- C++ 库 - <线程>
- C++ 库 - <元组>
- C++ 库 - <类型信息>
- C++ 库 - <实用程序>
- C++ 库 - <valarray>
C++ 库 - <unordered_set>
介绍
它是一个关联容器,不按特定顺序存储唯一元素,并且允许根据单个元素的值快速检索各个元素。
定义
以下是 std::unordered_set 的定义
template < class Key, class Hash = hash<Key>, class Pred = equal_to<Key>, class Alloc = allocator<Key> > class unordered_set;
参数
键- 它定义元素的类型。
哈希- 它是一个一元函数对象。
Pred - 它是一个二元谓词,采用与元素类型相同的两个参数并返回一个布尔值。
Alloc - 它定义了allowcater的类型。
会员类型
以下成员类型可以用作成员函数的参数或返回类型。
会员类型 | 定义 | 笔记 |
---|---|---|
密钥类型 | 它是第一个模板参数(Key) | |
值类型 | 它是第一个模板参数(Key) | 与key_type相同 |
散列器 | 这是第二个模板参数(Hash) | 默认为:hash<key_type> |
键等于 | 这是第三个模板参数(Pred) | 默认为:equal_to<key_type> |
分配器类型 | 它是第四个模板参数(Alloc) | 默认为:分配器<value_type> |
参考 | 分配::引用 | |
常量引用 | 分配::const_reference | |
指针 | 分配::指针 | 对于默认分配器:value_type* |
常量指针 | 分配::常量指针 | 对于默认分配器:const value_type* |
迭代器 | const value_type的前向迭代器 | * 可转换为const_iterator |
常量迭代器 | const value_type的前向迭代器 | * |
本地迭代器 | const value_type的前向迭代器 | * 可转换为const_local_iterator |
常量局部迭代器 | const value_type的前向迭代器 | * |
尺码类型 | 无符号整型 | 通常与 size_t 相同 |
差异类型 | 有符号整数类型 | 通常与 ptrdiff_t 相同 |
会员功能
以下是成员函数列表
容量
迭代器
先生。 | 迭代器和描述 |
---|---|
1 | 开始
它将迭代器返回到开头。 |
2 | 结尾
它返回迭代器结束。 |
3 | 开始
它将 const_iterator 返回到开头。 |
4 | 森德
它返回 const_iterator 结束。 |
元素查找
修饰符
先生。 | 修饰符和描述 |
---|---|
1 | 安置
它用于构造和插入元素。 |
2 | 安放提示
它用于构造和插入带有提示的元素。 |
3 | 插入
它用于插入元素。 |
4 | 擦除
它用于擦除元素。 |
5 | 清除
它用于清除内容。 |
6 | 交换
它用于交换内容。 |