小编use*_*791的帖子

排序对的向量

Heyho,

我有一个关于排序对矢量的问题:

std::vector<std::pair<double,Processor*>> baryProc;
Run Code Online (Sandbox Code Playgroud)

这个向量已经填满了对.现在我想根据对中的double值对向量内的对进行排序

例:

假设我在向量内有3对.pair1在前面,第3对在前面.pair2在中间:

pair1(1, proc1) 
pair2(3, proc2)
pair3(2.5, proc3)
Run Code Online (Sandbox Code Playgroud)

现在我想根据double值对对进行排序.这样向量内的顺序是:

pair1(1, proc1) 
pair3(2.5, proc3)
pair2(3, proc2)
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做?我很困惑.

谢谢您的帮助

c++ sorting vector std-pair

16
推荐指数
2
解决办法
6万
查看次数

在std :: list中保存std :: set

我是c ++编程的新手,有一些问题.

我有一套:

std::set<Proc*> finalProc = getFinalProc();
Run Code Online (Sandbox Code Playgroud)

我只是想将这个集合中的所有元素复制到一个列表中.我以为我必须遍历集合并保存列表中的元素?我想我犯了一个重大错误,但我无法找到解决方案:

std::list<Proc*> firstLevel;
for(std::set<Processor*>::iterator it = endProcessors.begin(); it != endProcessors.end(); ++it){
    firstLevel.push_back( ???? );
}
Run Code Online (Sandbox Code Playgroud)

想法是push_back所有迭代元素?

谢谢

c++ list set

1
推荐指数
1
解决办法
4773
查看次数

标签 统计

c++ ×2

list ×1

set ×1

sorting ×1

std-pair ×1

vector ×1