Quel est le bon outil ?

Résolu
wismerhill__ Messages postés 88 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 26 juillet 2007 - 8 août 2006 à 10:04
cs_laurent1024 Messages postés 987 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 30 août 2012 - 8 août 2006 à 11:09
Bonjour, j'ai l'habitude de coder en VBA et une bonne facon de se passer des collections (objets particulierement lents) est de se faire un vecteur, et de creer une constante public global qui est en fait l'equivalent d'une clé

Exemple

dim Villes() as string
Villes(1) = "Paris"
Villes(2) = "Niouiork"
Villes(3) = "Petaouchnok"

en haut je fait un
public const cParis = 1 
public const cNiouiork = 2 
public const cPetaouchnok = 3 

Je fais la même chose en c++ mais je suis sur qu'il doit y avoir mieux avec la STL ou un truc dans le genre ....
???

Merci
++ 

wis : in tartiflette I trust (like the others)

6 réponses

turnerom Messages postés 492 Date d'inscription samedi 10 juillet 2004 Statut Membre Dernière intervention 12 janvier 2012 1
8 août 2006 à 10:55
Ah ben merde, je croyais qu'on pouvais mettre des balises html désolé !!!


#include

#include <map>


using namespace std;


int main()

{

  map<string, int> Villes;

 

  Villes["Paris"] = 1;

  Villes["Niouiork"] = 2;

  Villes["Petaouchnok"] = 3;


  cout << "Paris -> " << Villes["Paris"] << endl;


  return 0;

}

TuRn3r
3
cs_laurent1024 Messages postés 987 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 30 août 2012 25
8 août 2006 à 10:20
Avec la stl, il y a les maps qui te permettent, d'avoir un acces par clefs a tes elements


++
0
wismerhill__ Messages postés 88 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 26 juillet 2007
8 août 2006 à 10:57
merci pour l'exemple turnerom
zou !

wis : in tartiflette I trust (like the others)
0
cs_laurent1024 Messages postés 987 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 30 août 2012 25
8 août 2006 à 11:03
Personnellement, je l'aurais fait dans l'autre sens la map

  map Villes;

 

  Villes[1] = string("Paris");

...


++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
turnerom Messages postés 492 Date d'inscription samedi 10 juillet 2004 Statut Membre Dernière intervention 12 janvier 2012 1
8 août 2006 à 11:07
Ca dépend si apres il veut la retrouver en faisant
Villes["Paris"]

ou
Villes[1]

TuRn3r
0
cs_laurent1024 Messages postés 987 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 30 août 2012 25
8 août 2006 à 11:09
Oui, mais dans son exemple de depart, ca ressemble plus a villes[1].

De, toute facon les deux methode sont correctes.

++
0
Rejoignez-nous