Petite question sur la stl et les pointeurs. - C++ - Programmation
Marsh Posté le 16-02-2008 à 18:18:15
Salut,
Tu peux faire ainsi normalement:
Code :
|
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
Marsh Posté le 16-02-2008 à 19:07:23
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/
Marsh Posté le 16-02-2008 à 17:23:49
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é
Remarque: ma liste est dans un autre objet.
Merci d'avance à celui qui me sortira de ce pépin.