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

C++ Discussion :

[pointeurs/référence]


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut [pointeurs/référence]
    Je sais que ce topic n'est pas nouveau. Mais quelle est la différence entre un pointeur et une référence?

    Merci

  2. #2
    Membre Expert
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Par défaut
    Les pointeurs existent en C. Les references n'existent pas en C. C'est une difference...

  3. #3
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    Citation Envoyé par DaZumba
    Les pointeurs existent en C. Les references n'existent pas en C. C'est une difference...
    Quelle est la définition d'une référence ? Est-ce que &var n'est pas une référence sur var ?

  4. #4
    Membre Expert
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Par défaut
    Citation Envoyé par Eusebius
    Quelle est la définition d'une référence ? Est-ce que &var n'est pas une référence sur var ?
    Pas vraiment. A strictement parler, &var est l'adresse de var (& est l'operateur adresse). Si on veut appeler ca 'reference', soit, mais il faut le preciser parce que ce n'est l'usage etabli.
    Je pense que le PO voulait parler du passage par reference a une fonction (i.e. eviter la copie de la variable passee en argument) qui existe en Fortran ou en C++, notamment. Mais le C ne connait que le passage par valeur.

  5. #5
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    Je crois qu'une referrence en C++ pointe forcement sur quelquechose (donc pas sur NULL) et qu'on peut pas faire d'arithmetique dessus (pas d'addition, d'incrementation...)

  6. #6
    Membre Expert
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Par défaut
    On va finir par repondre a la question... En C++, un passage par reference signifie que l'on passe la variable a la fonction. Pas un pointeur contenant l'adresse de la variable, pas l'adresse de la variable. La variable. (Apres, c'est a l'implementation de determiner comment emuler ce comportement... Cela peut impliquer l'usage de pointeurs.)

  7. #7
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    Citation Envoyé par DaZumba
    Pas vraiment. A strictement parler, &var est l'adresse de var (& est l'operateur adresse). Si on veut appeler ca 'reference', soit, mais il faut le preciser parce que ce n'est l'usage etabli.
    Oué ben fallait pas appeler ça un "opérateur de déréférencement" parce que c'est légèrement trompeur...

  8. #8
    Membre Expert
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Par défaut
    Citation Envoyé par Eusebius
    fallait pas appeler ça un "opérateur de déréférencement" parce que c'est légèrement trompeur...
    L'operateur de dereferencement, c'est * (comme dans *p = 5; ). Mais tu as raison. Puisqu'on parle de derefencement, autant parler de referencement pour &...
    Il faudrait savoir de quoi le PO parle...

Discussions similaires

  1. Différence Pointeur Référence.
    Par Astraya dans le forum C++
    Réponses: 60
    Dernier message: 28/11/2010, 16h54
  2. Pointeur & référence
    Par ramzouni dans le forum C++
    Réponses: 1
    Dernier message: 07/03/2010, 22h00
  3. Equivalent pointeur - référence
    Par MAX-k dans le forum C#
    Réponses: 2
    Dernier message: 24/02/2010, 13h27
  4. Réponses: 6
    Dernier message: 06/03/2009, 06h44
  5. Réponses: 8
    Dernier message: 26/08/2004, 18h59

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