Bonsoir tout le monde,

Je suis entrain de développer une classe vecteur avecdes fonctionnalitées ressemblantes à celles de la STL, mais en beaucoup beaucoup plus lite, mais j'ai un probleme lié au classes internes de classe template :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
template <class T>
class vecteur {
   class iterateur;
//Methodes et champ de classes
};
 
template <class T>
class vecteur<T>::iterateur {
//Methodes et champs
};
Jusque là, tout va bien, mais c'est au niveau des fonctions de la classe vecteur retournant un iterateur au debut et a la fin des données que ça bloque

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
template <typename T>
vecteur<T>::iterateur vecteur<T>::debut(void) const {

	/*	Methode de la classe vecteur<T>
		Retourne un iterateur pointant
		sur le premier element de la vecteur<T> */
}

template <typename T>
vecteur<T>::iterateur vecteur<T>::fin(void) const {

	/*	Methode de la classe vecteur<T>
		Retourne un iterateur pointant
		sur le dernier élément de la vecteur<T> */
}
Voici ce que j'obtient, au deux lignes en rouge :

iterateur.h:52: error: expected constructor, destructor, or type conversion before "vecteur"
iterateur.h:52: error: expected `;' before "vecteur"
iterateur.h:63: error: expected constructor, destructor, or type conversion before "vecteur"
iterateur.h:63: error: expected `;' before "vecteur"
Quelqu'un a t'il la solution a ce problème ?

Merci d'avance.