Bonjour, derriere un titre aussi abscons vous devez vous demander ce que je veux faire.
version courte :
J'ai un enum
J'ai aussi des des strings (pour l'instant c'est dans un tableau...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 static enum StringValue { evVal1=1, evVal2, evXYZ, evcoincoin, evbidule };
Et j'aimerai bien faire un "map" de ces chaines avec mon enum, sans avoir a me pallucher à la main
Code : Sélectionner tout - Visualiser dans une fenêtre à part std::string trucs[5]={"val1","autre","xyz","panpan","pouet"};
Voilà... si vous avez une idée. (pour l'instant il n'y a que 5 val dans mon example, mais il y en aura plus)
Code : Sélectionner tout - Visualiser dans une fenêtre à part s_mapStringValues[trucs[2]] = evXYZ;
Version longue :
Pour ceux que ca interresse, je suis en train de chercher comment faire des switch avec des std::string.
J'ai trouvé ce lien qui est pas mal : http://www.codeguru.com/Cpp/Cpp/cpp_...icle.php/c4067
Mais je n'aime pas du tout comment ils initialisent leur map, et c'est pour cela que je cherche une manière moins bourrin pour initialiser le map.
sinon le fonctionnement à l'air simple :
Merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 static std::map<std::string, StringValue> s_mapStringValues; // initialisation... s_mapStringValues[trucs[2]] = evXYZ // etc.. switch(s_mapStringValues[une_string]) { case evXYZ : // et voilà... break; }






Répondre avec citation




Partager