IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

Hasard du "Sort"


Sujet :

C++

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 61
    Points : 96
    Points
    96
    Par défaut Hasard du "Sort"
    Bonjour à tous,
    je me heurte à un problème avec la fonction sort, je souhaite trier un vector. Voici 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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    #include <iostream>
    #include <string>
    #include <vector>
    #include <algorithm>
     
    #include "equipe.h"
     
     
    #define NBEQUIPESPOULES 8
     
    using namespace std;
     
    int main (int argc, char * const argv[]) {
    	int i = 0;
    	bool poussin = true;//, benjamin = false;
    	//Declaration des terrains
    	//string t[6] = {"N°1 : La trinitaine","N°2 : Ouest France","N°3 : Boulouard Demenagements","N°4 : BMW","N°5 : Sport Co","N°6 : Prévadiès"};
     
    	char pouleA = 'A';
     
    	//Tableaux de noms des poules
    	string EquipePA[NBEQUIPESPOULES];
     
     
    	//Demande des noms
    	//Pour la poule A des poussins
    	cout << "Poussins :" << endl;
    	for(i = 0; i < NBEQUIPESPOULES; i ++)
    	{
    		cout << "Entrer l'equipe " << i+1 << " de la poule A :  ";
    		cin >> EquipePA[i];
    	}
     
     
     
    	//Declaration des tableaux de poule non classé
    	vector <Equipe> PA;
     
    	PA[0].points(3);
    	PA[1].points(5);
    	PA[2].points(8);
    	PA[3].points(4);
    	PA[4].points(2);
    	PA[5].points(1);
    	PA[6].points(10);
    	PA[7].points(7);
     
    vector <Equipe> PAClasser;
    	for(i=0;i < NBEQUIPESPOULES; i ++)
    	{
    		PA.push_back(Equipe(string(EquipePA[i]),poussin,pouleA));
    		PAClasser.push_back(PA[i]);
     
    	}
     
    	//Afficher le tableau avant le classement
    	for(i=0;i < NBEQUIPESPOULES; i ++)
    	{
    		PAClasser[i].Afficher();
     
    	}
     
    	cout << endl << endl << endl;
     
    	cout << "Classer " << endl << endl << endl;
     
    	//Classement, si on enleve, cela marche
    	sort(PAClasser.begin(), PAClasser.end());
     
     
    	//Afficher le tableau classer
    	for(i=0;i < NBEQUIPESPOULES; i ++)
    	{
    		PAClasser[i].Afficher();
     
    	}
    		return 0;
    }
    Il me donne l'erreur suivante :
    error: passing 'const Equipe' as 'this' argument of 'bool Equipe::operator<(const Equipe&)' discards qualifiers
    Il me la donne 5 fois précisément, que dois je faire pour la résoudre ?

    Merci d'avance.

  2. #2
    Membre confirmé
    Inscrit en
    Août 2004
    Messages
    556
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 556
    Points : 588
    Points
    588
    Par défaut
    Tu n'aurais pas oublié de mettre "const" à la fin du prototype de ton opérateur < ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bool Equipe::operator<(const Equipe&) const

  3. #3
    Membre régulier

    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 61
    Points : 96
    Points
    96
    Par défaut
    Oups, petite erreur, désolé du dérangement

    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo