我目前有一個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