C++ STL pair使用方法及详细解析有哪些?

2026-04-17 01:180阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1739个文字,预计阅读时间需要7分钟。

C++ STL pair使用方法及详细解析有哪些?

我们知道,关联式容器存储的是键值对形式的数,例如:+C语言教程, http://c.biancheng.net/c/+Python教程, http://c.biancheng.net/python/+Java教程, http://c.biancheng.net/java/以上所示,每行都表示一个键。

我们知道,关联式容器存储的是“键值对”形式的数据,比如:

<"C语言教程", "c.biancheng.net/c/">
<"Python教程", "c.biancheng.net/python/">
<"Java教程", "c.biancheng.net/java/">

如上所示,每行都表示一个键值对,其中第一个元素作为键(key),第二个元素作为值(value)。

注意,基于各个关联式容器存储数据的特点,只有各个键值对中的键和值全部对应相等时,才能使用 set 和 multiset 关联式容器存储,否则就要选用 map 或者 multimap 关联式容器。

考虑到“键值对”并不是普通类型数据,C++ STL 标准库提供了 pair 类模板,其专门用来将 2 个普通元素 first 和 second(可以是 C++ 基本数据类型、结构体、类自定的类型)创建成一个新元素<first, second>。通过其构成的元素格式不难看出,使用 pair 类模板来创建“键值对”形式的元素,再合适不过。
阅读全文

本文共计1739个文字,预计阅读时间需要7分钟。

C++ STL pair使用方法及详细解析有哪些?

我们知道,关联式容器存储的是键值对形式的数,例如:+C语言教程, http://c.biancheng.net/c/+Python教程, http://c.biancheng.net/python/+Java教程, http://c.biancheng.net/java/以上所示,每行都表示一个键。

我们知道,关联式容器存储的是“键值对”形式的数据,比如:

<"C语言教程", "c.biancheng.net/c/">
<"Python教程", "c.biancheng.net/python/">
<"Java教程", "c.biancheng.net/java/">

如上所示,每行都表示一个键值对,其中第一个元素作为键(key),第二个元素作为值(value)。

注意,基于各个关联式容器存储数据的特点,只有各个键值对中的键和值全部对应相等时,才能使用 set 和 multiset 关联式容器存储,否则就要选用 map 或者 multimap 关联式容器。

考虑到“键值对”并不是普通类型数据,C++ STL 标准库提供了 pair 类模板,其专门用来将 2 个普通元素 first 和 second(可以是 C++ 基本数据类型、结构体、类自定的类型)创建成一个新元素<first, second>。通过其构成的元素格式不难看出,使用 pair 类模板来创建“键值对”形式的元素,再合适不过。
阅读全文