Bonjour,
je suis face à un problème de compilation, et je n'ai pas réussi à trouver d'informations utiles sur ce site ou sur le net.
Globalement, mon problème est donné par ce code :
À la compilation, g++ m'indique "error: expected ‘;’ before ‘it’"..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #include <list> using namespace std; template < typename T > class A{ public: class B{ }; void test(){ list<B>::iterator it; //ligne incriminée par le compilateur } };
En particulier, j'ai pu remarquer que :
- en supprimant la ligne "template <typename T>", je compile sans souci
- en supprimant purement et simplement le "it", je compile sans souci
- en supprimant à la fois le "template <typename T>" et le "it", g++ m'indique "error: declaration does not declare anything"
Avez vous une explication sur ce qui peut être à l'origine de cette erreur de compilation (ou disposez vous de liens vers des documents qui pourraient me révéler la réponse) ?
Merci d'avance !
Partager