Bonjour,
je souhaite ne pas définir d'opérateur de tri lors d'insertion d'elements dans une map. La map en question contient des éléments indexés par des clefs de type string. Mais je voudrais que les éléments dans la map (les clefs) soient triés par ordre d’insertion, et non pas par ordre alphabétique des clefs comme cela se produit avec ce foncteur :
Comment faire cela ? Est-ce que la map est réellement appropriée ? Sinon quel conteneur prendre ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 struct Key_Comp { bool operator()(const std::string par_o_s1, const std::string par_o_s2) const { return par_o_s1 < par_o_s2 ; } };
Avec
map["b"] = "beta" ;
map["a"] = "alpha" ;
map["d"] = "delta" ;
map["c"] = "cata !" ;
Je voudrais obtenir lors de l'affichage :
au lieu de :Affichage de la clef b : beta
Affichage de la clef a : alpha
Affichage de la clef d : delta
Affichage de la clef c : cata !
NB : j'avais essayé en retournant toujours "true" dans le foncteur de clef mais ca ne fonctionne pas.Affichage de la clef a : alpha
Affichage de la clef b : beta
Affichage de la clef c : cata !
Affichage de la clef d : delta
Merci pour votre aide.
Partager