vector< pair<int, string> > 怎么用

2024-11-24 07:27:46
推荐回答(3个)
回答1:

typedef 的作用是个一个类型重新起个名字,并没有生成一个新类型。
(define就是简单的字符串替换了)
所以,pair 是类型,用Per表示为类型,比较方便。

根据STL的源代码
template
struct pair {
_T1 first;
_T2 second;
……
};

在stl_pair.h里,除了pair的构造函数外就是重载比较运算符。提供的接口不多。

个人以为 ,从本质上说,pair是个Adapter,对两个class进行封装。在STL的源码中,感觉好像就是map里用了下pair。

回答2:

pair类型里面可以有2个整数类型的数据,但是前面有typedef所以是重命名,
假如Pea a; a(1,2);可以这样写,但是你在这里写的pair不知道具体的函数,所以我也不知道里面的功能是什么

回答3:

vector<...>容器的<>里需要以个对象类型,
而pair就是一个对象类型,该类型对象有两个数据,first是int型,second是string类型。比如可以把一个页码值和该页出现的单词对应起来。吧pair放入容器vector就是建立了一个pair类型的集合,就能把每一页的内容集合起来写一本字典。