Bonjour à tous!!

Voilà tout est dans le titre, j'ai tenté de m'inspirer de la FAQ, mais ça j'ai du commettre une petite erreur quelque part.

J'ai une classe (abstraite):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
class CDrawableObject
{
	public:
		CDrawableObject();
		virtual ~CDrawableObject();
( ... )
        int m_Type;
};
une liste de pointeur sur cette classe:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
std::list<CDrawableObject*> m_InterfaceObject;
une structure pour trier cette liste:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
//Structure pour trier les objets
struct SortByType
{
   bool operator ()(const CDrawableObject* a1, const CDrawableObject* a2) const
   {
      return (a1->m_Type) < (a2->m_Type);
   }
};
et enfin l'appelle à la fonction de trie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
std::sort(m_InterfaceObject.begin(), m_InterfaceObject.end(), SortByType() );
J'obtiens les erreurs suivantes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
C:\Program Files\Microsoft Visual Studio 8\VC\include\algorithm:2903: error C2784: 'reverse_iterator<_RanIt>::difference_type std::operator -(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)'ÿ: impossible de d‚duire l'argument modŠle pour 'const std::reverse_iterator<_RanIt> &' … partir de 'std::list<_Ty>::_Iterator<_Secure_validation>'
C:\Program Files\Microsoft Visual Studio 8\VC\include\algorithm:2903: error C2784: 'reverse_iterator<_RanIt>::difference_type std::operator -(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)'ÿ: impossible de d‚duire l'argument modŠle pour 'const std::reverse_iterator<_RanIt> &' … partir de 'std::list<_Ty>::_Iterator<_Secure_validation>'
C:\Program Files\Microsoft Visual Studio 8\VC\include\algorithm:2903: error C2784: 'reverse_iterator<_RanIt>::difference_type std::operator -(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)'ÿ: impossible de d‚duire l'argument modŠle pour 'const std::reverse_iterator<_RanIt> &' … partir de 'std::list<_Ty>::_Iterator<_Secure_validation>'
C:\Program Files\Microsoft Visual Studio 8\VC\include\algorithm:2903: error C2784: 'reverse_iterator<_RanIt>::difference_type std::operator -(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)'ÿ: impossible de d‚duire l'argument modŠle pour 'const std::reverse_iterator<_RanIt> &' … partir de 'std::list<_Ty>::_Iterator<_Secure_validation>'
C:\Program Files\Microsoft Visual Studio 8\VC\include\algorithm:2903: error C2676: '-'ÿbinaire : 'std::list<_Ty>::_Iterator<_Secure_validation>' ne d‚finit pas cet op‚rateur ou une conversion vers un type acceptable pour l'op‚rateur pr‚d‚fini
C:\Program Files\Microsoft Visual Studio 8\VC\include\algorithm:2903: error C2780: 'void std::_Sort(_RanIt,_RanIt,_Diff)'ÿ: 3 arguments attendus - 4 fournis
:: === Build finished: 6 errors, 0 warnings ===