Utilisation de la stl sort()

cs_agah Messages postés 1 Date d'inscription mercredi 24 février 2010 Statut Membre Dernière intervention 24 février 2010 - 24 févr. 2010 à 14:52
dragonjoker59 Messages postés 92 Date d'inscription samedi 26 mars 2005 Statut Membre Dernière intervention 23 septembre 2015 - 24 févr. 2010 à 17:47
Bonjour
J'ai un probleme pour la surcharge de operator<
Je ne sais vraiment comment faire pour trier mon list
class matrice{
private:
struct element{
int indice;
int nombre ;
};
list<element> litEtl;
public:
matrice();
trier();
bool operator<(const element&);
};

Je ne sais avec quel element comparer mon element de const element,
J ai vu que en redefinissant le operator< la liste va se trier lui meme
Mais je ne sais comment faire
J ai absolument besoin qu'om m'aide
Ca fait quelque heures que j'avance pas

Merci

3 réponses

dragonjoker59 Messages postés 92 Date d'inscription samedi 26 mars 2005 Statut Membre Dernière intervention 23 septembre 2015
24 févr. 2010 à 15:30
Tu n'as qu'à définir ton opérateur en fonction de classe de 'element' (qui devient alors une classe) et tu compares donc ton paramètre de fonction à 'this'


Coin coin !
0
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
24 févr. 2010 à 17:40
La comparaison doit se faire au niveau d'élément pas de matrice donc:
class matrice
{
private:
  struct element
  {
    int indice;
    int nombre ;
    bool operator<(const element&);
  };
  list<element> litEtl;
public:
  void matrice();
  void trier();
};


@dragonjoker59:
qui devient alors une classe)

Heu... Non pas tout à fait. En C++ struct et class ce sont la même chose !
Seul le niveau de visiblité par défaut change.

Ceci:
class Pouet
{
  int _tata;
public:
 int _toto;
};

Equivaut à ceci:
struct Pouet
{
 int _toto;
private:
  int _tata;

};

_____________________________________________
Historique de mes créations, et quelques articles:[ http://0217021.free.fr/portfolio
http://0217021.free.fr/portfolio]
0
dragonjoker59 Messages postés 92 Date d'inscription samedi 26 mars 2005 Statut Membre Dernière intervention 23 septembre 2015
24 févr. 2010 à 17:47
Oué, je sais, après c'est une question de préférence, surtout. Personnellement, je ne mets pas de fonctions dans un struct, je préfère la mettre en class (restes du C ?)


Coin coin !
0
Rejoignez-nous