我目前有一个std :: vector,它包含double的std :: vector。我想按双vectore的第二个元素进行排序。例如: 而不是按MyVec [0]或myvec [1]排序,然后根据myvec [0] [1] myvec [1] [1]对myVec [0]和myvec [1]进行排序。基本上按照包含的值进行排序,而不是其中的对象。由内部的元素排序std :: vector?
因此,如果myvec [0] [1]小于myvec [1] [1],那么myvec [0]和myvec [1]将交换。 感谢
任何原因,你不能键值复制出来的阵列,然后排序,防止竞争条件? – 2010-06-07 22:49:19
@Michael,以上介绍的是比赛条件?就我个人而言,我更关心确保这个向量向量中的每个元素都至少有2个元素。我会被包含在使用'at'函数而不是下标操作符,只是为了解决这个问题。 – 2010-06-07 23:33:27
根据比较的写法,部分路径可能会因排序而改变元素[1],然后如果值未被高速缓存,可能会发生不好的事情。 – 2010-06-08 01:18:26