https://www.hdzikao.com

C++里面make_pair是干什么用的???它跟pair有什么关系??还有STL里面的ma...(...int,vector<类> > 如何用make_pair给该容器插入元素)【c++里面make_pair是干什么用的?它跟pair有什么关系?】

[导读] 大家好,今天小热关注到一个比较有意思的话题,就是关于makePair的问题,于是小编就整理了2个相关介绍makePair的解答,让我们一起看看吧。 文章目录: C++里面make_pair是干什么用的???它跟pai

C++里面make_pair是干什么用的???它跟pair有什么关系??还有STL里面的ma...(...int,vector<类> > 如何用make_pair给该容器插入元素)【c++里面make_pair是干什么用的?它跟pair有什么关系?】

大家好,今天小热关注到一个比较有意思的话题,就是关于makePair的问题,于是小编就整理了2个相关介绍makePair的解答,让我们一起看看吧。

文章目录:

  1. C++里面make_pair是干什么用的???它跟pair有什么关系??还有STL里面的ma...
  2. ...int,vector<类> > 如何用make_pair()给该容器插入元素

一、C++里面make_pair是干什么用的???它跟pair有什么关系??还有STL里面的ma...

std::pair是二元组类模板,就是表示两种相互关联的事物。make_pair实际上是一个创建二元组的便利函数模板,这里用到了C++函数模板的模板参数可省略的特性,不使用这个函数模板的话,每次你要创建一个二元组必须写明模板参数。

如:

std::pair<char, int> a( 'a', 97 );

make_pair( 'a', 97 );

二、...int,vector<类> > 如何用make_pair()给该容器插入元素

这位同学您好!

你声明的map是map< int,vector<ID_Card> > data_m,而插入的对象则是一个(int, ID_Card),并不是(int, vector<ID_Card>),所以出现错误。

可以修改map的声明为map<int, ID_Card> data_m;

应该就可以了。

希望能够帮到你。

不知道你到底要把什么放map中,很明显语法上应该是 data_m.insert(make_pair(i, data));这才对。

或者map<int, ID_Card> data_m2, 然后 data_m2.insert(make_pair(i, data[i]));

你这个类型不匹配啊,mao容器你插入的是vector<ID_Card>中的一个元素,那类型就是ID_Card,怎么能匹配map的类型vector<ID_Card>呢?

到此,以上就是小编对于makePair的问题就介绍到这了,希望介绍关于makePair的2点解答对大家有用。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

相关文章阅读