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 :

[STL] Iterateur en paramètre de fct avec valeur par defaut


Sujet :

SL & STL C++

  1. #1
    Membre éclairé Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Points : 661
    Points
    661
    Par défaut [STL] Iterateur en paramètre de fct avec valeur par defaut
    salut,

    est il possible de donner une valeur par defaut à une iterateur de list (STL) dans la signature d'une fonction.

    J'aimerais rendre cet iterateur optionnel pour les appels à cette fonction. L'idéal serait de lui donner une valeur du genre NULL.

    J'arrive pas lui passer cette valeur. J ai contourné le problem en passant un pointeur d iterateur en paramètre.
    (qui lui est facilement reglable à NULL)
    Pour les details, cherche tout seul !

  2. #2
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 614
    Points : 30 626
    Points
    30 626
    Par défaut
    Salut,

    J'ai l'impression que ca sent quelque peu la mauvaise conception...

    Alors, avant de répondre, j'aimerais savoir ce que tu souhaites faire de ton itérateur dans la fonction à laquelle tu veux le passer en argument:

    Savoir quel est le type de traitement que tu souhaites effectuer, les arguments autres que ton iterateur...

    En effet, ou bien tu veux travailler sur l'objet itéré, et, à ce moment là, l'itérateur est obligatoire (ou l'objet itéré lui meme), ou bien, tu veux utiliser l'itérateur dans le cadre du conteneur, et à ce moment là, tu devrais passer le contenur et un indice permettant de retrouver le bon élément, qui - lui - pourrait avoir une valeur par défaut (qui forcerait, par exemple, à prendre le premier élément trouvé dans ton conteneur )...

    Une solution serait également d'envisager une classe contenant un conteneur et l'itérateur adéquat, pointant sur "le dernier objet selectionne", et d'utiliser une fonction utilisant ces deux informations
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 064
    Points : 1 053
    Points
    1 053
    Par défaut
    Utilise la surcharge:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    void machin();
    void machin(list<bidule>::iterator& it);

Discussions similaires

  1. dico: get avec valeur par defaut ou gestion d'exception ?
    Par shadowsam dans le forum Général Python
    Réponses: 11
    Dernier message: 29/05/2010, 18h02
  2. [AC-2003] requete selection avec valeur par defaut
    Par benoitXV dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 05/03/2010, 15h31
  3. champ type lookup avec valeur par defaut
    Par jeinny dans le forum CRM
    Réponses: 0
    Dernier message: 17/02/2010, 15h44
  4. Réponses: 7
    Dernier message: 29/01/2009, 12h32
  5. Creation de table avec valeur par defaut
    Par Tsukaasa dans le forum JDBC
    Réponses: 0
    Dernier message: 01/09/2008, 17h45

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