set (ou map) pour classer par ordre alphabetique des noms - C++ - Programmation
Marsh Posté le 12-05-2003 à 22:31:12
ben c'est pas la meme chose. celà dit, si tu as juste besoin d'une collection ordonnée, ben le std::set de std::string bien entendu (et gardes tes cast C pour toi ok, pas de char* merci)
Marsh Posté le 12-05-2003 à 22:34:20
et ca ordonne tout seul comme un grand ?
pour le cast je le faisais au débuggueur parce qu'il apparaissait comme des nombres () et je voulais savoir pkoi (et c'était pas une adresse mémoire)
Marsh Posté le 12-05-2003 à 22:36:56
tu as un std::set<std::string> et std::multiset<std::string>
le deuxieme, admet les valeurs multiples
Marsh Posté le 12-05-2003 à 22:38:20
tu m'as toujours pas rassuré, tu utilises bien les std::string?
Marsh Posté le 12-05-2003 à 22:39:23
++Taz a écrit : tu m'as toujours pas rassuré, tu utilises bien les std::string? |
ouais
Mais je voulais être sur que l'opération < était défini pour les string
Marsh Posté le 12-05-2003 à 22:41:30
il l'est. cela dit le deuxième argument de std::set est un comparateur, qui est par défaut less<T>
Marsh Posté le 12-05-2003 à 22:44:19
++Taz a écrit : il l'est. cela dit le deuxième argument de std::set est un comparateur, qui est par défaut less<T> |
je sais c'est pour ca que je demandais ca j'avais à définir l'opérateur ou non
Marsh Posté le 12-05-2003 à 22:47:31
check http://www.sgi.com/tech/stl/set.html
avec les lower, upper et equal bound
et les opérations externes set_difference, set_intersection, set_symmetric_difference, set_union
Marsh Posté le 13-05-2003 à 08:14:19
en fait je fais avoir besoin d'une map dont la clé sera le std::string, mais je comprends pas trop un truc :
http://www.sgi.com/tech/stl/Map.html
pkoi il utilise un const char* dans l'exemple + une fonction de comparaison plutôt qu'une string
Marsh Posté le 13-05-2003 à 09:50:07
ben pour montrer comment faire son propre comparateur, mais t'occupe, mets tes std::string, le comparateur par défaut sera less, et tout roulera (map et set on la meme implémentation)
Marsh Posté le 13-05-2003 à 09:55:45
++Taz a écrit : ben pour montrer comment faire son propre comparateur, mais t'occupe, mets tes std::string, le comparateur par défaut sera less, et tout roulera (map et set on la meme implémentation) |
ouais c'est ce que j'ai fait de toute facon, j'allais pas me compliquer la vie
Marsh Posté le 12-05-2003 à 22:25:53
Vous recommandez comme clé pour classer un set par ordre alphanumérique ?
(d'ailleurs j'ai remarqué au debuggeur que parfois les strings apparaissent comme des nombres, et qu'en les castant en string ca redevient comment il faut => c'est quoi ces nombres ?)