Probleme classe interne template
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:
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:
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 :
Citation:
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.