Link
:
en fait std, c'est le namespace? z'êtes obligé de le rajouter devant chaque classe? ça rend encore plus illisible...
Non, c'est juste que si tu ne mets pas "using namespace std;" au début de ton programme, tu dois le mettre devant toutes les classes de la bibliothèque standard. L'intérêt c'est que tu peux définir une autre classe "map" dans ton propre namespace, et utiliser quand même std::map -- évidemment si tu ne comptes pas faire ce genre de choses c'est aussi simple de rajouter simplement un "using namespace"
en C (en supposant qu'il y ait des fonctions pour cela, dans une quelquonque lib):
Chouette, on va s'amuser :
AddToMap(x, "hello", CreateNewIntQueueWithOneInt(3));
Pas vraiment, ce que j'ai fait c'est *rajouter* 3 à un tableau déjà existant

(évidemment tu peux n'émuler que le comportement exact du programme tel que je l'ai écrit dans l'ordre précis que j'ai utilisé, mais à ce moment-là "return 3" est une solution tout aussi valide

)
DestroyIntQueue(GetFromMap(x, "hello"));
Qui te dit que j'ai pas rajouté au milieu d'autres éléments ?
(bien sur, on suppose que tout se passe bien)
En effet, premier problème
(J'ai mis "IntQueue", car je pense qu'avec des noms pareil, deque doit être une file d'attente, non?)
Oui, deque = "double-ended queue".
Mais qu'est-ce qui se passe si je remplace "int" par "unsigned long" ? Et si je le remplace par "pair<int,string>" ?

Et si je veux que mon tableau associatif utilise une relation d'ordre spéciale ? (par exemple, faire des comparaisons case-insensitive) Et si je veux utiliser autre chose que des chaînes ?
En tout cas c'est gentil de souligner aussi bien tous les problèmes du C
