Liste [VC++] - C - Programmation
Marsh Posté le 02-02-2006 à 17:21:39
badre2911 a écrit : Est-il possible de faire des liste en C ou C++ du genre : |
[C] Non.
Marsh Posté le 02-02-2006 à 18:50:01
ReplyMarsh Posté le 02-02-2006 à 19:01:02
badre2911 a écrit : Merci, mais il n'y a pas plus simple que les hash_map ?? |
Tables de chaines triées, recherche dichotomique...
Marsh Posté le 02-02-2006 à 19:18:03
ReplyMarsh Posté le 02-02-2006 à 20:39:51
Joel F a écrit : punaise hash_map c'est pas le drame o_O |
une doc sur hash_map ? laquelle ? Y a autant de hash_map que de compilateurs __gnu_cxx::hash_map<>, ..., et même std::hash_map<> de m$
lire une doc sur std::tr1::unordered_map<> a davantage de sens à mon avis, mais c'est peut-etre ce que tu voulais dire.
Sinon, dans le cas ou il n'y a pas des milliers d'éléments, std::map<> doit pouvoir faire l'affaire.
Marsh Posté le 02-02-2006 à 20:47:43
stdext chez m1cr0sh1tzor lol depuis teh mighty multichity vs 2003, lol
(lol)
m'enfin utiliser hash_map quand on se fout de la portabilité, c'est quand meme pas de la haute volée (enfin c'est plus simple sous VisualShitio que sous llovefaismoilamourtoutnumonbognugcc)
Marsh Posté le 02-02-2006 à 21:08:46
chrisbk a écrit : stdext chez m1cr0sh1tzor lol depuis teh mighty multichity vs 2003, lol |
t'es sur ? gdr disait que std::hash_map n'avait été décidé d'etre retiré par m$ que très récemment.
chrisbk a écrit : m'enfin utiliser hash_map quand on se fout de la portabilité, c'est quand meme pas de la haute volée (enfin c'est plus simple sous VisualShitio que sous llovefaismoilamourtoutnumonbognugcc) |
Yeah
Marsh Posté le 03-02-2006 à 08:07:00
++fab a écrit : une doc sur hash_map ? laquelle ? Y a autant de hash_map que de compilateurs |
c'est pas ça le problème
Marsh Posté le 03-02-2006 à 08:15:43
++fab a écrit : t'es sur ? gdr disait que std::hash_map n'avait été décidé d'etre retiré par m$ que très récemment. |
sur sur, depuis VS2003 pour cause de conformité au stdart, ca a été retiré de std et placé dans stdext
Marsh Posté le 03-02-2006 à 10:18:10
++fab a écrit : une doc sur hash_map ? laquelle ? Y a autant de hash_map que de compilateurs __gnu_cxx::hash_map<>, ..., et même std::hash_map<> de m$ |
à noté que std::tr1::unordered_map<> est livré avec gcc4. Mais je suis d'accord avec toi, une std::map<> ça fonctionnera très bien. Y a qu'à utiliser.
Marsh Posté le 03-02-2006 à 12:48:44
chrisbk a écrit : sur sur, depuis VS2003 pour cause de conformité au stdart, ca a été retiré de std et placé dans stdext |
vas-y, chausse les vissées !
http://groups.google.fr/group/fr.c [...] 8659c3a171
Marsh Posté le 03-02-2006 à 13:49:36
++fab a écrit : vas-y, chausse les vissées ! |
heuh ???
Marsh Posté le 03-02-2006 à 13:51:08
ReplyMarsh Posté le 03-02-2006 à 13:53:02
J'ai regarde sur google hash_map mais je ne trouve pas d'exemple comment declarer le tableau.
par exemple:
tab["toto"] = 3
comment l'utilise t-ont ?
Merci de votre aide.
Marsh Posté le 03-02-2006 à 13:53:47
ReplyMarsh Posté le 03-02-2006 à 13:59:04
ça me parait clair que hash_map<> traine encore dans std:: par compatibilité.
Marsh Posté le 03-02-2006 à 14:00:28
chrisbk a écrit : hash_map<std::string, int> toto; |
d'ou l'utilisation de std::map<> qui est bien plus raisonnable AMHA.
Marsh Posté le 03-02-2006 à 14:01:49
++fab a écrit : ça me parait clair que hash_map<> traine encore dans std:: par compatibilité. |
il est tjs dans std:: mais si tu l'utilise tu te manges des warnings par pleine poignées "machintruc is deprecated", bref a partir de vs2003 c'est plus utilisable (sauf en desactivant le warning), fo passer par stdext. Meme chose pour les <iostream.h> & cie. A voir si c'est tjs present dans VS2005 ou c'est parti pour de bon
Marsh Posté le 03-02-2006 à 14:02:31
++fab a écrit : d'ou l'utilisation de std::map<> qui est bien plus raisonnable AMHA. |
ué. Sinon le pb sous gcc c'est qu'il ne defini pas par defaut de fonction de hachage pour std::string (enfin, si, mais non)
Marsh Posté le 03-02-2006 à 14:11:27
SI j'ai bien compris mieux vaut utiliser std::map<std::string,int> sur VC++ ?
il faut inserer l'include <map> je suppose ?
donc l'equivalent de
tab["toto"]=5
tab["titi"] = 6
correspond à
std::map<std::string,5> toto
std::map<std::string,6> titi
si je veux recuperer la valeur de toto je suppose que je dois faire
int a;
std::map<std::string, a> toto ??
C'est bien ca ?
Merci.
Marsh Posté le 03-02-2006 à 14:12:33
pas du tout
faut lire de la doc sur :
-le c++ (declaration de variable)
-les templates (instanciation)
-hash_map
y'en a plein le net
enfin cela dit
Citation : |
ca, c'est bon
Marsh Posté le 03-02-2006 à 14:33:55
J'ai jamais utilise les templates, mais je vais regarder sur google sur le C++.
Merci.
Marsh Posté le 03-02-2006 à 16:15:54
badre2911 a écrit : SI j'ai bien compris mieux vaut utiliser std::map<std::string,int> sur VC++ ? |
non
badre2911 a écrit : |
non
std::map<std::string, int> toto;
toto["foo"] = 6;
std::cout << toto["foo"];
Marsh Posté le 03-02-2006 à 16:50:16
on peut faire ça ???
Je croyais qu'on utilisait un curseur et qu'on faisait un peu comme ça :
Code :
|
Marsh Posté le 03-02-2006 à 17:31:42
ouai enfin c'etait pour montrer l'esprit quoi
Marsh Posté le 02-02-2006 à 16:43:41
Bonjour,
Est-il possible de faire des liste en C ou C++ du genre :
tab["toto"] = 1
tab["titi"] = 3
ou
tab["toto"]= "jaune"
tab["titi"]="rouge"
Avez vous une idee la dessus ?
Peut etre qu'avec CString cela est possible?
Merci de votre aide.