Bonjour
Plutôt que de tenter de décrire mon problème, je prends un exemple, cela sera sûrement plus simple !
J'utilise le framework Qt.
Je cherche à trier une QList. J'utilise la fonction :
avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part qSort(list.begin(), list.end(), sortFunction);
Jusque là, c'est ok ; Maintenant, je désire trier cette liste en utilisant un membre d'une instance dans la fonction de tri.
Code : Sélectionner tout - Visualiser dans une fenêtre à part bool sortFunction(const LeType &s1, const LeType &s2);
Je ne trouve pas la bonne méthode / syntaxe.
Ecrit en code qui ne compile pas, cela serait quelque chose comme ça :
Quelle est la solution élégante pour faire cela ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 // en préambule, nous avons implémenté sur QString, un opérateur "-" qui renvoie la // distance entre les deux opérandes. class MaClasse(){ public: void trierSurDistance(){ qsort(list.begin(), list.end(), this->sortFunction); } private: bool sortFunction(const QString& s1, const QString& s2){ return s1-reference < s2-reference; } QString reference; }
Merci
Henri
Partager