Erreur de declaration (partie 2)
Bonjour, jai une erreur de compilation dans un fichier et je ne comprend pas trop pourquoi, peut-etre lun de vous peut meclairer (PS: Desole pour les fautes je nai pas reussis a configurer le clavier en francais encore)
Code:
1 2 3 4 5 6
|
43 virtual void supprimer(X x)
44 {
45 std::vector<X>::iterator i=find(lst_X.begin(),lst_X.end(),x);
46 if ((*i)==x) lst_X.erase(i);
47 }; |
Lerreur quil me fait:
Code:
1 2 3 4 5
|
tpl_liste_entite.h: In member function `virtual void TPL_LISTE_ENTITE<X>::supprimer(X)':
tpl_liste_entite.h:45: error: expected `;' before "i"
tpl_liste_entite.h:46: error: `i' undeclared (first use this function)
tpl_liste_entite.h:46: error: (Each undeclared identifier is reported only once for each function it appears in.) |
Ma classe est de type template <class X>
Je suis sous Unix et jutilise g++, merci!
Re: Erreur de declaration
Code:
1 2 3 4 5
| 43 virtual void supprimer(X x)
44 {
45 typename std::vector<X>::iterator i=find(lst_X.begin(),lst_X.end(),x);
46 if ((*i)==x) lst_X.erase(i);
47 }; |
Sans avoir un exemple complet, c'est difficile d'etre certain que le changement que je propose resoudra ton probleme (et sans connaitre la version de gcc en plus).