- C标准库
- C标准库
- C++标准库
- C++库 - 首页
- C++库 - <fstream>
- C++库 - <iomanip>
- C++库 - <ios>
- C++库 - <iosfwd>
- C++库 - <iostream>
- C++库 - <istream>
- C++库 - <ostream>
- C++库 - <sstream>
- C++库 - <streambuf>
- C++库 - <atomic>
- C++库 - <complex>
- C++库 - <exception>
- C++库 - <functional>
- C++库 - <limits>
- C++库 - <locale>
- C++库 - <memory>
- C++库 - <new>
- C++库 - <numeric>
- C++库 - <regex>
- C++库 - <stdexcept>
- C++库 - <string>
- C++库 - <thread>
- C++库 - <tuple>
- C++库 - <typeinfo>
- C++库 - <utility>
- C++库 - <valarray>
- C++ STL库
- C++库 - <array>
- C++库 - <bitset>
- C++库 - <deque>
- C++库 - <forward_list>
- C++库 - <list>
- C++库 - <map>
- C++库 - <multimap>
- C++库 - <queue>
- C++库 - <priority_queue>
- C++库 - <set>
- C++库 - <stack>
- C++库 - <unordered_map>
- C++库 - <unordered_set>
- C++库 - <vector>
- C++库 - <algorithm>
- C++库 - <iterator>
- C++高级库
- C++库 - <any>
- C++库 - <barrier>
- C++库 - <bit>
- C++库 - <chrono>
- C++库 - <cinttypes>
- C++库 - <clocale>
- C++库 - <condition_variable>
- C++库 - <coroutine>
- C++库 - <cstdlib>
- C++库 - <cstring>
- C++库 - <cuchar>
- C++库 - <charconv>
- C++库 - <cfenv>
- C++库 - <cmath>
- C++库 - <ccomplex>
- C++库 - <expected>
- C++库 - <format>
- C++库 - <future>
- C++库 - <flat_set>
- C++库 - <flat_map>
- C++库 - <filesystem>
- C++库 - <generator>
- C++库 - <initializer_list>
- C++库 - <latch>
- C++库 - <memory_resource>
- C++库 - <mutex>
- C++库 - <mdspan>
- C++库 - <optional>
- C++库 - <print>
- C++库 - <ratio>
- C++库 - <scoped_allocator>
- C++库 - <semaphore>
- C++库 - <source_location>
- C++库 - <span>
- C++库 - <spanstream>
- C++库 - <stacktrace>
- C++库 - <stop_token>
- C++库 - <syncstream>
- C++库 - <system_error>
- C++库 - <string_view>
- C++库 - <stdatomic>
- C++库 - <variant>
- C++ STL库速查表
- C++ STL - 速查表
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;
参数
- 键 - 它定义了元素的类型。
- 哈希 - 它是一个一元函数对象。
- 谓词 - 它是一个二元谓词,它接受与元素类型相同的两个参数并返回一个布尔值。
- 分配器 - 它定义了分配器的类型。
成员类型
以下成员类型可用作成员函数的参数或返回类型。
成员类型 | 定义 | 备注 |
---|---|---|
key_type | 它是第一个模板参数 (键) | |
value_type | 它是第一个模板参数 (键) | 与key_type |
hasher | 它是第二个模板参数 (Hash) | 默认为hash<key_type> |
key_equal | 它是第三个模板参数 (Pred) | 默认为equal_to<key_type> |
allocator_type | 它是第四个模板参数 (Alloc) | 默认为allocator<value_type> |
reference | Alloc::reference | |
const_reference | Alloc::const_reference | |
pointer | Alloc::pointer | 对于默认分配器value_type* |
const_pointer | Alloc::const_pointer | 对于默认分配器const value_type* |
iterator | 一个指向const value_type | 的可转换const_iterator |
const_iterator | 一个指向const value_type | * |
local_iterator | 一个指向const value_type | 的可转换const_local_iterator |
const_local_iterator | 一个指向const value_type | * |
size_type | 一个无符号整型 | 通常与size_t相同 |
difference_type | 一个有符号整型 | 通常与ptrdiff_t相同 |
成员函数
以下是成员函数列表
序号 | 方法及描述 |
---|---|
用于赋值内容。 |
容量
迭代器
序号 | 迭代器及描述 |
---|---|
1 |
返回指向开头的迭代器。 |
2 |
返回指向结尾的迭代器。 |
3 |
返回指向开头的const_iterator。 |
4 |
返回指向结尾的const_iterator。 |
元素查找
序号 | 元素查找及描述 |
---|---|
1 |
用于获取指向元素的迭代器。 |
2 |
用于计算具有特定键的元素个数。 |
3 |
用于获取具有特定键的元素范围。 |
修改器
序号 | 修改器及描述 |
---|---|
1 |
用于构造和插入元素。 |
2 |
用于使用提示构造和插入元素。 |
3 |
用于插入元素。 |
4 |
用于删除元素。 |
5 |
用于清除内容。 |
6 |
用于交换内容。 |
桶
序号 | 桶及描述 |
---|---|
1 |
返回桶的数量。 |
2 |
返回最大桶的数量。 |
3 |
返回桶的大小。 |
4 |
查找元素的桶。 |
哈希策略
序号 | 哈希策略及描述 |
---|---|
1 |
返回负载因子。 |
2 |
用于获取或设置最大负载因子。 |
3 |
用于设置桶的数量。 |
4 |
请求更改桶的容量 |
观察者
序号 | 观察者及描述 |
---|---|
1 |
用于获取哈希函数。 |
2 |
用于获取键等价谓词。 |
3 |
用于获取分配器。 |
非成员重载函数
序号 | 非成员函数重载及描述 |
---|---|
1 | operator== 测试两个映射是否相等。 |
2 | operator!= 测试两个映射是否相等。 |
3 |
它交换两个unordered_set容器的内容。 |
广告