Bonjour,
Je sais que des réponses ont déjà été apporté à des questions similaires, mais elles ne m'ont pas permis de régler mon problème.
Je cherche à trier un vector d'entier (ce sont des index d'objet) d'après la valeur allouée à leurs index dans un tableau stocké dans une classe "Solveur". J'aimerais le faire avec la fonction sort de <algorithm> pour aller plus vite.
J'ai donc créé un comparateur d'index dans la classe en question, mais je n'arrive pas à passer ce comparateur en paramètre de sort.
Voilà des fragments de mon code...
Voilà, si quelqu'un pouvait m'aider...
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
17 bool Solveur::comp_ordo(int i, int j) { return cplex.getValue(C_jk[i][0]) < cplex.getValue(C_jk[j][0]); } void Solveur::fct(){ ... vector<int> job_ordo = vector<int>(nJ); for (int j = 0; j < nJ; j++) job_ordo[j] = j; sort(job_ordo.begin(), job_ordo.end(), &(this->comp_ordo)); // &(this->comp_ordo) ne fonctionne pas ... }
Merci!!!
Partager