Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1366 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Problème tout simple - Accès à un conteneur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème tout simple - Accès à un conteneur

n°1277163
Luke58
Posté le 04-01-2006 à 20:28:44  profilanswer
 

Salut !
 
 
J'ai un problème tout con : comment accéder au premier élément d'un conteneur (genre set, ou map) ?
 
J'ai une map de cette forme :

Code :
  1. std::map<int,std::string> uneMap

j'ai stocké trois paires dedans, par exemple avec l'instruction :

Code :
  1. uneMap.insert(std::map<int,std::string>::value_type(unEntier,unString));

et je voudrais lire le contenu de la première partie (le int) de la première paire uniquement.
 
C'est bête car je sais comment lire les premiers élements de chaque paire du conteneur (avec un itérateur : )

Code :
  1. std::map<int,std::string>::const_iterator it;
  2.        for (it=uneMap.begin();
  3.             it!=uneMap.end();
  4.             it++)
  5.            {
  6.                std::cout << (*it).first;
  7.            }

mais pas de juste un seul...
 
 
Par extension, comment lire le contenu d'un élément en particulier dans un conteneur (le troisième, le dixième etc.) ?
 
 
Voila, merci pour votre aide.

mood
Publicité
Posté le 04-01-2006 à 20:28:44  profilanswer
 

n°1277532
haazheel
Posté le 05-01-2006 à 12:48:13  profilanswer
 

Code :
  1. std::map<int,std::string>::const_iterator it = uneMap.begin();
  2. std::cout << it->first;

n°1277575
theshockwa​ve
I work at a firm named Koslow
Posté le 05-01-2006 à 14:00:24  profilanswer
 

Luke58 a écrit :

Par extension, comment lire le contenu d'un élément en particulier dans un conteneur (le troisième, le dixième etc.) ?


une map n'a pas de gestion d'ordre des éléments, donc attention au sens que tu donnes à "premier", "troisième" ou "dixième", sans quoi, tu pourrais avoir des surprises ...
Quoi qu'il en soit, pour y accéder, tu peux toujours utiliser l'itérateur :
 

Code :
  1. std::map<int, std::string>::const_iterator it = uneMap.begin() +10; // donne directement un itérateur incrémenté 10 fois


 
 
mais si tu comptes lire un seul élément dans ta map, tu te serviras plutôt de la clé :
 

Code :
  1. uneMap[123] = "chaine"; // insertion d'un element dans la map
  2. std::map<int, std::string>::const_iterator it = uneMap.find(123); // recherche d'un element dans la map


n°1278096
Luke58
Posté le 06-01-2006 à 11:54:06  profilanswer
 

Merci beaucoup

n°1325778
zahui_eric
Posté le 15-03-2006 à 13:17:28  profilanswer
 

question tout con.
Je suis debutant en C++ et je voudrais vous exposer un probleme:
Au fait je dispose d element de 1 a N et de deux listes L1 et l2.
Je voudrais ecrire le programme suivant:
pour j allant de 1 a N  
verifier si j est lelement de L1 ou L2.
Sinon envoyer un message d erreur.
Je vous remercie

n°1325786
_darkalt3_
Proctopathe
Posté le 15-03-2006 à 13:36:12  profilanswer
 

retourne travailler au lieu d'essayer de faire faire tes exos par quelqu'un d'autre :o

n°1330403
Thordax
Shop smart. Shop S-Mart !
Posté le 22-03-2006 à 17:55:47  profilanswer
 

j'aime l'amabilité de ce forum

n°1330521
_darkalt3_
Proctopathe
Posté le 22-03-2006 à 19:52:10  profilanswer
 

- y'a pas de question.
- y'a pas de probleme.
- y'a juste à deviner que c'est un exo de cours comme y'en a déjà des tonnes.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Problème tout simple - Accès à un conteneur

 

Sujets relatifs
probleme accent php5 avec XML/XSLProblème structure de mon site
[ASP.NET][VB.net] Problème avec accents (DropDownList)comment avoir un menu tout simple en css ou autre chose
"while" avec une equation simple"Probleme avec Google...
Problème de librairie spring[JS] Problème pour changer une valeur ds un input
probleme avec php et flashPetit problème avec vb6 et mysql
Plus de sujets relatifs à : Problème tout simple - Accès à un conteneur


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR