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 :

pointeur et vector STL


Sujet :

SL & STL C++

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 7
    Points : 6
    Points
    6
    Par défaut pointeur et vector STL
    Voila petit problème avec la récupération des éléments d'un vector ou plus précisement d'un pointeur sur un vector à savoir :

    - lorsque l'on a un vector, on peut récupérer les éléments de celui ci grace à la surcharge de l'operateur [].
    ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    vector<T> vect;
    T elts = vect[1];
    - Mais comment récuperer les éléments de la même façon, c'est à dire sans les retirer du vector lorsque l'on possède un pointeur sur se vector ?
    Bien evidement vect[1] ne fonctionne pas ni *vect[1].

    Merci d'éclairer ma lanterne (oui je sais en C++ elle est un peu faiblarde )

  2. #2
    Membre éprouvé Avatar de Herode
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2005
    Messages
    825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 825
    Points : 933
    Points
    933
    Par défaut
    C'est un problème lié à la priorité des opérateurs. L'operateur [] est prioritaire sur l'opérateur *. Par conséquent :
    *vect[i] équivaut à *(vect[i]).

    Dans ton cas, il faut donc écrire :
    (*vect)[i]

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Et bien merci bien, merci bien.
    Je n'étais pas loin en faite mais absoluement pas penser au priorités dans les opérateurs, je tacherez d'y faire attention a l'avenir c'est trop bête de rester bloquer sur ça.

  4. #4
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 282
    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 282
    Points : 11 036
    Points
    11 036
    Par défaut
    Pourquoi un pointeur sur un vecteur ?

  5. #5
    Membre confirmé
    Inscrit en
    Août 2004
    Messages
    556
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 556
    Points : 588
    Points
    588
    Par défaut
    Citation Envoyé par Luc Hermitte
    Pourquoi un pointeur sur un vecteur ?
    Tout simplement quand tu dois gérer un vecteur en dehors de la classe dont il est membre et que tu veux agir directement sur ce vecteur et non une copie ?

  6. #6
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 282
    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 282
    Points : 11 036
    Points
    11 036
    Par défaut
    Référence. Ou alors fonctions dédiées à la classe, qui reflètent ce que l'on peut vouloir faire sur le vecteur ; histoire de suivre la règle de ne jamais exposer en R/W une donnée interne/privée (quel sens de la rendre privée alors ?)

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

Discussions similaires

  1. Passage de pointeur de vector en paramètre
    Par Chop_chop dans le forum SL & STL
    Réponses: 2
    Dernier message: 11/05/2007, 11h33
  2. [c++] pointeur sur vector
    Par agrosjea dans le forum SL & STL
    Réponses: 3
    Dernier message: 28/03/2007, 18h37
  3. Copie de 2 vectors STL
    Par cjacquel dans le forum SL & STL
    Réponses: 2
    Dernier message: 07/12/2006, 21h20
  4. Supprimer Element Vector STL
    Par cjacquel dans le forum SL & STL
    Réponses: 9
    Dernier message: 30/11/2006, 18h40
  5. Iterateur sur pointeur de vector
    Par Pragmateek dans le forum SL & STL
    Réponses: 9
    Dernier message: 13/05/2006, 13h50

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