IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SL & STL C++ Discussion :

conversion d'iterators


Sujet :

SL & STL C++

  1. #1
    Membre éprouvé Avatar de PINGOUIN_GEANT
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 149
    Par défaut conversion d'iterators
    Bonjour à toutes et à tous,

    je cherche à convertir un iterator sur std::list en input iteror
    grosso modo
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    list<int> LI;
    iterator<input_iterator_tag,int> in_iter=LI.begin();
    je pense que c'est lié à un truc que je ne comprends pas.
    Pourquoi LI.begin() ne renvoie pas un un iterator bi-directionnel ?
    le compilateur m'indique : _List_iterator
    Ne suis-je pas en train de réaliser une conversion vers une classe mère ? (passer d'un bi-directionnel à un input)
    Je suis désolé : cela m'a l'air facile à la base mais je n'ai rien trouvé.
    Je vous remercie par avance.

    <EDIT>
    apparemment, iterator<input_iterator_tag> serait une classe "vide".
    ce que je trouve bizarre car dans la doc sgi output_iterator possède un constructeur mais pas input_iterator.
    il y a aussi des trucs spéciaux pour des itérateurs d'insertion.
    Donc :il y a-t'il moyen de construire simplement un input iterator à partir d'une std::list ?
    je vous en serai reconnassant si vous arrivez à m'éclairer sur ces sujets.
    </EDIT>

  2. #2
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    On ne caste pas vers des inputs iterators.
    Quand tu écris des algo génériques, tu peux juste vérifier que le type itérateur reçu vérifie bien la propriété d'être un input-itérator, ou alors employer la spécialisation de l'algorithme pour le type d'itérateur réellement manipulé. Via les tags je crois bien.

    Il me semble que sur le site d'Angelika Langer, tu trouveras quelques articles qui traitent de cela.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  3. #3
    Membre éprouvé Avatar de PINGOUIN_GEANT
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 149
    Par défaut
    je te remercie, je vois mieux ce qui se passe, c'était le fait de pouvoir utiliser les diverses catégories d'itérateurs dans les algorithmes qui me manquait.
    Car je ne comprenais pas que si on pouvait de déclarer et définir un itérateur bidirectionnel sur une liste, pourquoi il était impossible de déclarer et définir un input iterator (vu que c'est une des bases de l'itérateur cité plus haut) : je trouvais qu'il y avait une perte de la généricité.

    mais avec les algorithmes tout s'explique.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. conversion reverse_iterator vers iterator
    Par disturbedID dans le forum SL & STL
    Réponses: 9
    Dernier message: 17/03/2009, 10h19
  2. conversion "Iterator" -> "POSITION"
    Par scorpion06 dans le forum C++
    Réponses: 1
    Dernier message: 29/03/2007, 16h37
  3. Algorithme de conversion de RTF vers HTML
    Par youtch dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 10/09/2002, 12h35
  4. [Conversions] Millisecondes...
    Par agh dans le forum Langage
    Réponses: 2
    Dernier message: 06/08/2002, 11h25
  5. Réponses: 2
    Dernier message: 05/06/2002, 12h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo