Bonjour, dans une classe Menu, j'ai un type list nommé order et un vecteur de Menu_Object* nommé MyMenu.

Menu_Object possède une fonction nommée int get_ordre().

J'aimerais trier order comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
bool Menu::compare(int one, int two)
{
	if(MyMenu[one]->get_ordre()<MyMenu[two]->get_ordre())
		return true;
	return false;
}
Malheureusement, le compilateur m'affiche l'erreur

In constructor 'Menu::Menu(std::vector<Menu_Object*, std::allocator<Menu_Object*>>, void(*)(...
no matching function for call to 'std::list<int, std::allocator<int>>::sort(<unknown type>)'

il me propose 2 candidats que je peux vous afficher si nécessaire.

Après quelques test je me suis aperçu que le problème venait du fait que compare est une fonction membre de menu. Comment éviter ce problème ?