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 :
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 ;
	}
};
Comment faire cela ? Est-ce que la map est réellement appropriée ? Sinon quel conteneur prendre ?
Avec
map["b"] = "beta" ;
map["a"] = "alpha" ;
map["d"] = "delta" ;
map["c"] = "cata !" ;


Je voudrais obtenir lors de l'affichage :
Affichage de la clef b : beta
Affichage de la clef a : alpha
Affichage de la clef d : delta
Affichage de la clef c : cata !
au lieu de :

Affichage de la clef a : alpha
Affichage de la clef b : beta
Affichage de la clef c : cata !
Affichage de la clef d : delta
NB : j'avais essayé en retournant toujours "true" dans le foncteur de clef mais ca ne fonctionne pas.
Merci pour votre aide.