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...

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
 
...
}
Voilà, si quelqu'un pouvait m'aider...
Merci!!!