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

  FORUM HardWare.fr
  Programmation
  C++

  Petite question sur la stl et les pointeurs.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Petite question sur la stl et les pointeurs.

n°1687318
Psycojoker
Posté le 16-02-2008 à 17:23:49  profilanswer
 

Bonjour,  
 
J'ai un petit problème de synthaxe qui me bloque depuis plusieurs heures.
 
J'utilisais une liste de la stl du type: typedef std::list<monObjet> ListmonObjet;
 
monObjet contenant un attribut "id_".
 
et je pouvais y accèder de la manière suivante:  
ListmonObjet L;
L.end()->id_; //le end() c'est juste pour l'exemple
 
Pour certaines raisons j'ai du changer mon type de liste en typedef std::list<monObjet*> ListmonObjet;
 
Et depuis impossible de trouver la synthaxe qui me permettrait d'accèder à mon attribut "id_", j'ai beau avoir plus ou moins tout essayé  :cry:  
 
Remarque: ma liste est dans un autre objet.
 
Merci d'avance à celui qui me sortira de ce pépin.

mood
Publicité
Posté le 16-02-2008 à 17:23:49  profilanswer
 

n°1687344
IrmatDen
Posté le 16-02-2008 à 18:18:15  profilanswer
 

Salut,
 
Tu peux faire ainsi normalement:

Code :
  1. typedef std::list<monObjet*> ListmonObjet;
  2. ListmonObjet objList;
  3. // Ajout de quelques éléments...
  4. if(objList.size() > 0 && (*objList.begin()) != 0)
  5.    (*objList.begin())->id_;


Par contre, n'oublie pas que l'itérateur renvoyé par end() est toujours invalide, donc ton exemple serait mieux en utilisant begin().
 
Le principe est que pour accéder à l'objet pointé/contenu par un itérateur, il faut le déréférencer, d'où le (*objList.begin()), ensuite comme cet objet est un pointeur, tu utilises -> pour avoir accès à ses membres


Message édité par IrmatDen le 16-02-2008 à 18:18:31
n°1687354
Psycojoker
Posté le 16-02-2008 à 19:07:23  profilanswer
 

Merci beaucoup ça marche :)
 
Le pire c'est que j'étais sur d'avoir essayé cette synthaxe, maintenant ça devrait aller comme sur des roulettes \o/


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

  Petite question sur la stl et les pointeurs.

 

Sujets relatifs
question consernant un code contenant : instanceofquestion site
Les structures - petite questionune petite question
une question importanteListes et sort [résolu]
petite question de logique sur les pointeurspetite question sur les pointeurs
[C] Petite question sur les pointeurs deux étoiles qui se suivent[c++] petite question sur les pointeurs (pas un problème)
Plus de sujets relatifs à : Petite question sur la stl et les pointeurs.


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