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

Qt Discussion :

Tri d'une QList


Sujet :

Qt

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 11
    Par défaut Tri d'une QList
    Bonjour,

    Je cherche à trier une QList de la ligne i à la ligne j?


    En lisant, la doc, j'ai remarqué que la fonction qSort prend en paramètres des "iterators", pourquoi ne prend-t-elle pas des entiers indiquant le numéro de la ligne de départ et celui de la ligne d'arrivée?

    Pouvez vous m'éclairer sur ce problème de base.
    Merci d'avance.
    Rémi

  2. #2
    Membre chevronné
    Avatar de haraelendil
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 283
    Par défaut
    Si tu veux trier ta liste de la ligne i à la ligne j, c'est pratiquement la même chose:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    qSort(liste.being()+i, liste.begin()+j);
    Techniquement, l'iterateur est juste une couche d'abstraction qui te permet de manipuler des éléments d'une listes sans avoir justement besoin de la notion d'index. Cela permet un code plus clair, et surtout ça permet de pouvoir manipuler de la même façon les iterateurs pour n'importe quel type de conteneur sans avoir ça se soucier de "comment c'est fait à l'intérieur"

  3. #3
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Par défaut
    Qu est ce que tu ne comprends pas ?
    1) Comment trier la liste ?
    2) Pourquoi Qt utilise des iterator ?

    1) tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    QList<int> list;
     list << 33 << 12 << 68 << 6 << 12;
     qSort(list.begin(), list.end(), qLess<int>());
     // list: [ 6, 12, 12, 33, 68 ]
     qSort(list.begin(), list.end(), qGreater<int>());
    // list: [ 68, 33, 12, 12, 6 ]
    2) Pour les iterators, je n'ai pas la réponse, mais seulement des idées personnelles. Déjà ces iterator sont les mêmes que ceux de la STL, ce qui permet d'utiliser les méthodes de tri aussi bien avec les containers Qt qu'avec ceux de la STL. Ensuite, tous les containers ne sont pas indexés par un int, les QMap ou QHash utilisent des clés et n'ont donc pas vraiment d'index. Les iterators offrent donc un moyen générique de parcourir ( et donc trier) tous ces containers.

    En espérant t'avoir éclairer,

    G.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 11
    Par défaut
    Merci à tous les 2!

    Je m'étais embrouillé! Je ne voyais pas comment transformer un entier en iterator!
    Iterator+int = Iterator grâce à la surcharge de l'opérateur +!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Maintenir un tri dans une QList
    Par Christophe dans le forum Débuter
    Réponses: 2
    Dernier message: 19/09/2012, 09h39
  2. Tri sur le contenu d'une QList
    Par Christophe dans le forum Débuter
    Réponses: 2
    Dernier message: 14/09/2012, 09h41
  3. Tri d'une requête UNION
    Par MasterOfChakhaL dans le forum Langage SQL
    Réponses: 5
    Dernier message: 06/08/2004, 10h26
  4. tri d'une liste
    Par Guigui_ dans le forum Langage
    Réponses: 4
    Dernier message: 09/01/2003, 18h08

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