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

Discussion :

Itérateur d'une Qlist

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2009
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 109
    Par défaut [Résolu]Itérateur d'une Qlist
    Salut a tous ,

    Voici le problème :
    J'ai une Qlist, a laquelle j'ai associé un iterateur.
    Je le fais partir de la fin et reculer

    Ca c'est bon.

    Le truc c'est que j'aimerai connaître la méthode qui permet de retourner la position de l'iterateur dans la Qlist.

    Par exemple :

    j'ai une Qlist (dynamique), je position l'itérateur a la fin.

    j'ajoute une élément, je décrémente.
    j'ajoute un élément, je décrémente.

    en théorie si je demande la position de l'iterateur -1 je devrais tomber sur la position du deuxième éléments mis dans la Qlist, voila ce que je veux pouvoir faire.

    comment obtenir la position de l'iterateur (à tout moment) dans la Qlist ?
    j'ai bien foullé les méthodes de l'iterator mais j'ai rien vu qui me retourne un integer qui symbolise la position dans la liste

    Merci d'avance

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    voici une autre solution :

    int QList::indexOf ( const T & value, int from = 0 ) const

    Returns the index position of the first occurrence of value in the list, searching forward from index position from. Returns -1 if no item matched.

    Example:

    QList<QString> list;
    list << "A" << "B" << "C" << "B" << "A";
    list.indexOf("B"); // returns 1
    list.indexOf("B", 1); // returns 1
    list.indexOf("B", 2); // returns 3
    list.indexOf("X"); // returns -1
    voici une adresse électronique utile :

    QList

    aurevoir..
    Dernière modification par Deepin ; 21/10/2011 à 10h04.

  4. #4
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Citation Envoyé par brother2007 Voir le message
    Bonjour,

    voici une autre solution :
    Le problème c'est qu'il va reparcourir toute la liste pour trouver la position et si y as plusieur élément identique impossible de savoir lequel correspond à l'iterateur...

  5. #5
    Membre expérimenté

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2006
    Messages
    281
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 281
    Par défaut
    Bonjour,

    je ne suis pas sûr de bien comprendre, mais en gros c'est une liste avec index négatif...

    Un petit tour de passe-passe ne suffit-il pas ?
    En très gros :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    maListe.at(-monIndexNegatif);

  6. #6
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Citation Envoyé par LeGars Voir le message
    Bonjour,

    je ne suis pas sûr de bien comprendre, mais en gros c'est une liste avec index négatif...

    Un petit tour de passe-passe ne suffit-il pas ?
    En très gros :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    maListe.at(-monIndexNegatif);

    là j'ai pas compris
    pourquoi parle tu d'index négatif?

  7. #7
    Membre confirmé
    Inscrit en
    Octobre 2009
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 109
    Par défaut
    Citation Envoyé par yan Voir le message
    Le problème c'est qu'il va reparcourir toute la liste pour trouver la position et si y as plusieur élément identique impossible de savoir lequel correspond à l'iterateur...
    C'était ca le problème, tu avais bien compris Yan.

    J'ai résolu le truc en utilisant une variable propre a chaque élément.
    C'était contraignant mais bon.

    En fait j'ajoutais tjrs a 0 donc a chaque nouvelle ajout j'ai parcouru la Qlist en incrémentant de 1 les variables "compteur" de chaque élément déjà présent.

    Peut être que Qt avait un truc prévu pour ca, mais j'ai pas trouvé.
    En tous cas merci a tous d'avoir répondu , et désolé du retard pour éclaircissement, mais je bossais sur des trucs différents , et j'ai un peu oublié ce problème-ci.

  8. #8
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Citation Envoyé par Knarf64 Voir le message
    J'ai résolu le truc en utilisant une variable propre a chaque élément.
    C'était contraignant mais bon.
    Pourquoi ne pas avoir utilisé std::disctance ?

    sinon c'est le bouton qu'il faut utiliser

Discussions similaires

  1. Tri d'une QList
    Par Rémininho dans le forum Qt
    Réponses: 3
    Dernier message: 09/08/2010, 15h49
  2. Gestion d'une QList de QLabel
    Par détraqué dans le forum Débuter
    Réponses: 6
    Dernier message: 28/06/2010, 13h42
  3. Insérer un objet perso dans une QList
    Par titmael dans le forum Qt
    Réponses: 7
    Dernier message: 12/03/2010, 18h34
  4. Initialisation d'itérateur sur une map vide
    Par Pitu45 dans le forum SL & STL
    Réponses: 2
    Dernier message: 18/09/2009, 11h32
  5. Creer une QList de struct
    Par Iaurkano dans le forum Qt
    Réponses: 3
    Dernier message: 21/03/2008, 09h06

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