Bonjour les amis, j'ai un petit problème à propos de la surcharge des opérateurs
J'ai deux classes qui sont :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
class Cellule{
double note ;
};
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
class Ligne{
vector<string> matiere;
Cellule celule;
public :
friend  std::ostream & operator << (ostream &os, Ligne &ld);
};
Pour la surdéfinition de l'operateur<< j'ai fait comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
 ostream& operator<<(ostream &os, Ligne& ld)
 {
          os<< ld.matiere<<"matiere"<<ld.cellule<<"cellulee"<<endl;
          return os;
          }
Mais dans l'execution il me donne l'erreur dans cette ligne : os<< ld.matiere<<"matiere"<<ld.cellule<<"cellulee"<<endl;
Ce qu'il m'écrit c'est : no match for 'operator<<' in 'os << ld->Ligne::matiere'

J'ai pas compris l'erreur et que dois je faire ?Pouuriez vous m'aider s'il vous plait ?
Merci d'avance ^^