Surcharge pour sort() C++
agah
-
Pacorabanix Messages postés 4122 Date d'inscription Statut Membre Dernière intervention -
Pacorabanix Messages postés 4122 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
class matrice{
private:
struct element{
int indice;
int nombre ;
};
list<element> litEtl;
public:
matrice();
bool operator<(const element&);
trier();
};
bool matrice::operator <(const matrice::element & e1){
return (e1.indice <= element.indice);
}
je voudrai juste surchargre mon operator< mais peine perdu
Quel u un peu m aider
Ou est l'erreur
J'aimerai le trier selon l'indice
class matrice{
private:
struct element{
int indice;
int nombre ;
};
list<element> litEtl;
public:
matrice();
bool operator<(const element&);
trier();
};
bool matrice::operator <(const matrice::element & e1){
return (e1.indice <= element.indice);
}
je voudrai juste surchargre mon operator< mais peine perdu
Quel u un peu m aider
Ou est l'erreur
J'aimerai le trier selon l'indice
Configuration: Windows XP / Firefox 3.5.7
5 réponses
-
quelle est l'erreur ?
-
Merci
Je ne sais avec quel element comparer l'element e1 de operator<
matrice.cpp
bool matrice::operator <(const matrice::element & e1){
return (e1.indice <= element.indice);
}
'matrice::element' : utilisation non conforme de ce type comme expression
aide moi je dois avancer -
Je te conseillerai de définir ta struture element en dehors de la matrice. Ou alors de mettre un typedef.
-
ce n'est pas "element.indice" qu'il faut indiquer, mais "this->indice", non ?
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
pacorabanix a tout faux, mais il vient de m'aider à comprendre l'erreur.
En fait tu défini une structure "element" dans ta classe "matrice", mais pas de variable.
ceci devrai mieu fonctionné :class matrice{ private: struct element{ int indice; int nombre ; }; element Element; list<element> litEtl; public: matrice(); bool operator<(const element&); trier(); }; bool matrice::operator <(const matrice::element & e1){ return (e1.indice <= Element.indice); }
ouclass matrice{ private: typedef struct { int indice; int nombre ; }element; element Element; list<element> litEtl; public: matrice(); bool operator<(const element&); trier(); }; bool matrice::operator <(const matrice::element & e1){ return (e1.indice <= Element.indice); }