C++ 语言中 pair 的常见用法详解
发布网友
发布时间:2024-10-15 00:17
我来回答
共1个回答
热心网友
时间:2024-10-15 00:56
在C++编程中,pair是一种实用数据结构,它在需要将两个元素组合成一个单元但又不想创建复杂结构体时显得尤为便利。pair本质上是一个内部包含两个元素的复合类型,其类型是可自定义的,如代码所示:
首先,引入头文件#include "pair",并使用std命名空间,这样就可以直接使用pair了。通常,map头文件会自动包含utility,所以无需额外引入。pair有两个参数,分别对应first和second,支持基本类型和容器。
定义一个string和int类型的pair,写法如下:
pair p;
可以直接在定义时初始化,如:pair p("haha", 5);
也可临时创建,方法有:
pair temp("haha", 5);
或使用make_pair函数:make_pair("haha", 5)
访问pair的元素就像访问普通结构体,如:p.first 和 p.second。
pair支持比较操作,如 =、!=、<、、>=,首先依据first的值判断,若相同再比较second。例如:
pair p1(1, "one");
pair p2(1, "two");
cout << (p1 == p2 ? "equal" : "not equal") << endl; // 输出 "not equal",因为first相同但second不同
pair最常见的用途有两个:一是简化二元结构体的使用,节省编码;二是作为map的键值对,如插入键值对:
map<pair, string> m;
m[{“haha”, 5}] = “example”;
通过以上介绍,pair在C++中的应用和操作方式就更为直观了。