C++11 如何在c+中编写一个以一对int为键、int为值的向量+;?

C++11 如何在c+中编写一个以一对int为键、int为值的向量+;?,c++11,vector,syntax,int,std-pair,C++11,Vector,Syntax,Int,Std Pair,我是编程新手,刚开始学习散列。 我试图找出一个类似于map的方法,我们如何将ints的pair指定为键,将int指定为向量中的值 在搜索过程中,我确实找到了对的向量,其中对的第一个元素是键,第二个元素是值,但我需要一种方法将“对int”作为键,将int作为值 我觉得有必要这样做,因为我需要根据int的对值进行排序。有什么建议吗 您可以声明如下向量: std::vector<std::pair<std::pair<int,int>, int>> vec; 看

我是编程新手,刚开始学习散列。
我试图找出一个类似于map的方法,我们如何将
int
s的
pair
指定为键,将
int
指定为向量中的值

在搜索过程中,我确实找到了
对的
向量
,其中
对的
第一个
元素是键,
第二个
元素是值,但我需要一种方法将“
对int
”作为键,将
int
作为值


我觉得有必要这样做,因为我需要根据
int
对值进行排序。有什么建议吗

您可以声明如下
向量

std::vector<std::pair<std::pair<int,int>, int>> vec;



但是,如果您想查找特定元素,那么我建议使用
std::map
而不是
std::vector
。请记住,
std::map
将始终进行排序。但是,由于std::pair是一个键,您可能需要提供一个自定义比较器。

只需这样做。到底是什么阻止了你?我找不到语法来做这件事。如何将pair作为key,int作为value从map复制到vector,然后根据value对pair和int的向量进行排序。
vec.push_back(std::make_pair(std::make_pair(1,2), 3));