Bonjour,
J'ai une std::list qui contient des elements std::pair<std::string, int>, comme le montre le code ci-dessous.
Ce que je veux, c'est trier cette liste selon le deux element de la std::pair (donc le int). Si je fais alist.sort(), ca trie selon le premier element (c-a-d le std::string), ce que je ne veux pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 std::list<std::pair<std::string, int> >alist; std::pair<std::string, int> mp0("cde", 2); std::pair<std::string, int> mp1("fgh", 1); std::pair<std::string, int> mp2("abc", 3); alist.push_back(mp0); alist.push_back(mp1); alist.push_back(mp2);
Ca c'est mon premier souci. Le deuxieme c'est que une fois que la liste soit triee, je me demande s'il y a un truc dans la STL pour ne retenir que les 5 premiers elements de cette derniere et virer de la liste tous les autres.
Je vous remercie d'avance![]()
Partager