[C++] retour itérateur générique
Résolu/Fermé
zzegod
Messages postés
3
Date d'inscription
mardi 27 juin 2006
Statut
Membre
Dernière intervention
28 juin 2006
-
27 juin 2006 à 15:30
zzegod Messages postés 3 Date d'inscription mardi 27 juin 2006 Statut Membre Dernière intervention 28 juin 2006 - 27 juin 2006 à 17:20
zzegod Messages postés 3 Date d'inscription mardi 27 juin 2006 Statut Membre Dernière intervention 28 juin 2006 - 27 juin 2006 à 17:20
A voir également:
- [C++] retour itérateur générique
- Clé générique windows 10 - Guide
- Retour à la ligne excel - Guide
- Retour arrière clavier - Guide
- Retour à la ligne google sheet ✓ - Forum Bureautique
- Retour a la ligne php ✓ - Forum PHP
2 réponses
mamiemando
Messages postés
33422
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
10 décembre 2024
7 809
27 juin 2006 à 16:01
27 juin 2006 à 16:01
Oui la fonction begin() s'applique à un objet, car c'est une méthode de l'objet std::vector :
Attention si B et/ou U sont des types template, le type std::vector<B<U>*> est indéterminé à ce stade et on ne peut accéder aux champs iterator, const_iterator,... On règle alors le problème avec un typename :
Bonne chance
std::vector<B<U>*> v; std::vector<B<U>*>::iterator vit = v.begin();
Attention si B et/ou U sont des types template, le type std::vector<B<U>*> est indéterminé à ce stade et on ne peut accéder aux champs iterator, const_iterator,... On règle alors le problème avec un typename :
typename std::vector<B<U>*>::iterator vit = v.begin();
Bonne chance
zzegod
Messages postés
3
Date d'inscription
mardi 27 juin 2006
Statut
Membre
Dernière intervention
28 juin 2006
27 juin 2006 à 17:20
27 juin 2006 à 17:20
Merci pour ta réponse.
En fait, je n'étais pas très clair dans mon post : ma ligne de code, c'était la déclaration de ma propre méthode "begin" de ma classe A<T>.
Toutefois, en creusant ta remarque sur le non typage statique des template et l'usage du mot clé typename, j'ai réglé mon problème : j'ignorais juste que C++ interprétait ce genre de déclarations comme des expressions !
Encore merci !
En fait, je n'étais pas très clair dans mon post : ma ligne de code, c'était la déclaration de ma propre méthode "begin" de ma classe A<T>.
Toutefois, en creusant ta remarque sur le non typage statique des template et l'usage du mot clé typename, j'ai réglé mon problème : j'ignorais juste que C++ interprétait ce genre de déclarations comme des expressions !
Encore merci !