std::pair - cppreference.com
来自cppreference.com
template< class T1, class T2 > struct pair; |
||
std::pair 是类模板,提供将两个异质对象作为一个单元存储的途径。pair 是 std::tuple 的拥有两个元素的特殊情况。
若 T1 与 T2 都不是可能有 cv 限定的拥有非平凡析构函数的类类型或其数组,则 pair 的析构函数为平凡的。
模板形参
成员类型
| 成员类型 | 定义 |
first_type
|
T1
|
second_type
|
T2
|
成员对象
| 成员名 | 类型 |
first
|
T1
|
second
|
T2
|
成员函数
非成员函数
辅助类
辅助特化
template< class T, class U > constexpr bool enable_nonlocking_formatter_optimization<std::pair<T, U>> = enable_nonlocking_formatter_optimization<T> && enable_nonlocking_formatter_optimization<U>; |
(C++23 起) | |
这个 std::enable_nonlocking_formatter_optimization 针对 T 和 U 都已启用的 pair 对象的打印启用 std::print 和 std::println 的高效实现。
推导指引(C++17 起)
缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
| 缺陷报告 | 应用于 | 出版时的行为 | 正确行为 |
|---|---|---|---|
| LWG 2796 | C++98 | pair 的析构函数的平凡性未指明
|
已指明 |
参阅
| 实现固定大小的容器,可保有类型相异的元素 (类模板) [编辑] | |
| 创建左值引用的 std::tuple,或将元组解包为独立对象 (函数模板) [编辑] |