IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SL & STL C++ Discussion :

acceder au n iéme element d'une liste std::list


Sujet :

SL & STL C++

  1. #1
    Membre du Club
    Inscrit en
    Mars 2005
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 104
    Points : 62
    Points
    62
    Par défaut acceder au n iéme element d'une liste std::list
    bonjour, comment acceder au n iéme element d'une liste std::list

  2. #2
    Membre habitué Avatar de BertrandA
    Inscrit en
    Août 2003
    Messages
    170
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 170
    Points : 197
    Points
    197
    Par défaut
    Une liste stocke une séquence d'éléments chaînés. Les éléments n'ont pas de "numéro d'ordre", comme dans un vector.
    A moins de parcourir la liste jusqu'à l'élément souhaité, impossible d'y accéder directement.

  3. #3
    Membre du Club
    Inscrit en
    Mars 2005
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 104
    Points : 62
    Points
    62
    Par défaut
    merci
    j'ai fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    tompon=list;
    while (i<list.size())
    {
    cout<<tompon.champ<<endl;
    tompon.pop_front();
    }

  4. #4
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Là tu n'accèdes pas au n-ième élément, tu le ramènes en première position (en supprimant ceux qui se trouvent avant).
    La solution qui marche avec n'importe quel conteneur de la STL :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    std::list<Truc>::iterator it = liste.begin();
    std::advance(it, n);
     
    // it pointe sur le n-ième élément
    Et si tu fais juste un parcours :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for (std::list<Truc>::iterator it = liste.begin(); it != liste.end(); ++it)
        std::cout <<it->champ << std::endl;

  5. #5
    Membre du Club
    Inscrit en
    Mars 2005
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 104
    Points : 62
    Points
    62
    Par défaut
    merci beucouuuuuuu up

Discussions similaires

  1. [langage] Supprimer un élément dans une liste
    Par myjuna dans le forum Langage
    Réponses: 15
    Dernier message: 06/08/2014, 11h49
  2. Regrouper une liste en liste de listes
    Par West01 dans le forum Prolog
    Réponses: 12
    Dernier message: 14/03/2008, 14h07
  3. acceder au champ d'un element d'une liste
    Par kespy13 dans le forum SL & STL
    Réponses: 6
    Dernier message: 08/10/2007, 21h58
  4. std::list, std::vector et allocation mémoire
    Par buzzkaido dans le forum SL & STL
    Réponses: 20
    Dernier message: 15/06/2007, 15h58
  5. selectionner le dernier element d'une liste box
    Par adilou1981 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/03/2005, 10h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo