c++11 标准模板(STL)(std::pair)(一)
2023-12-18 09:51:05
std::pair
定义于头文件 |
template< ? ? class T1, |
std::pair
是一个结构体模板,其可于一个单元存储两个相异对象。 pair 是 std::tuple 的拥有两个元素的特殊情况。
若 std::is_trivially_destructible_v<T1> && std::is_trivially_destructible_v<T2> 为 true ,则 | (C++17 起) |
模板形参
T1, T2 | - | pair 所存储的元素类型。 |
成员类型
成员类型 | 定义 |
first_type | T1 |
second_type | T2 |
成员对象
成员名 | 类型 |
first | T1 |
second | T2 |
成员函数
(构造函数) | 构造新的 pair (公开成员函数) |
operator= | 对 内容赋值 (公开成员函数) |
swap (C++11) | 交换内容 (公开成员函数) |
非成员函数
make_pair | 创建一个 pair 对象,其类型根据各实参类型定义(函数模板) |
operator==operator!=operator<operator<=operator>operator>= | 按字典序比较 pair 中的值 (函数模板) |
std::swap(std::pair) (C++11) | 特化 std::swap 算法 (函数模板) |
std::get(std::pair) (C++11) | 访问 pair 的一个元素(函数模板) |
辅助类
std::tuple_size<std::pair> (C++11) | 获得pair 的大小(类模板特化) |
std::tuple_element<std::pair> (C++11) | 获得pair 中元素的类型(类模板特化) |
推导指引(C++17 起)
参阅
tuple (C++11) | 实现固定大小的容器,它保有类型可以相异的元素 (类模板) |
tie | 创建左值引用的 tuple ,或将 tuple 解包为独立对象(函数模板) |
std::pair
的推导指引?
template<class T1, class T2> | (C++17 起) |
为 std::pair 提供一个推导指引,以涵盖隐式推导指引所遗漏的极端情况。
特别是不可复制参数及数组到指针转换。
文章来源:https://blog.csdn.net/qq_40788199/article/details/135005504
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!