Programmation en C++ – Les références

Une référence est un alias, c’est-à-dire un autre nom pour une variable déjà existante. Une fois qu’une référence est initialisée avec une variable, le nom de la variable ou le nom de la référence peut être utilisé pour faire référencer à la variable.
 

Pointeurs VS Références en C++ :

Les références sont souvent confondues avec des pointeurs, mais il y a trois différences majeures entre les références et les pointeurs :

  • Vous ne pouvez pas avoir de références NULL. Vous devez toujours être en mesure de supposer qu’une référence est reliée à une case mémoire valide.
  • Une fois qu’une référence est initialisée à un objet, elle ne peut pas être changée pour désigner un autre objet. Les pointeurs peuvent être dirigés vers un autre objet à tout moment.
  • Une référence doit être initialisée lors de sa création. Les pointeurs peuvent être initialisés à tout moment.

 
 

Création de références en C ++

Pensez à un nom de variable comme une étiquette attachée à l’emplacement de la variable en mémoire. Vous pouvez alors penser à une référence comme deuxième étiquette attachée à cet emplacement mémoire. Par conséquent, vous pouvez accéder au contenu du variable à l’aide du nom de la variable d’origine ou de la référence. Par exemple, supposons que nous avons l’exemple suivant:

int var = 89;

Nous pouvons déclarer une référence sur var comme suit.

int& ref = var;

Lisez le & dans ces déclarations comme référence. Ainsi, lire la première déclaration comme « refi est une référence entier initialisée à vari » et lire la deuxième déclaration comme « refd est une référence double initialisée à vard. ». Exemple suivant utilise des références sur ‘int’ et ‘double’:

#include <iostream>
 
using namespace std;
 
int main () {
   // déclarer des variables simples
   int    vari;
   double vard;
 
   // déclarer les variables de référence
   int&    refi = vari;
   double& refd = vard;
   
   vari = 89;
   cout << "Valeur de vari : " << vari << endl;
   cout << "Valeur de reference refi : " << refi << endl;
 
   vard = 45.32;
   cout << "Valeur de vard : " << vard << endl;
   cout << "Valeur de reference refd  : " << refd   << endl;
   
   return 0;
}

La sortie :

Valeur de vari : 89
Valeur de reference refi : 89
Valeur de vard : 45.32
Valeur de reference refd  : 45.32

Les références sont généralement utilisées pour les arguments d’une fonction et les valeurs de retour d’une fonction. Voici donc deux sujets importants liés aux références C ++ qui devraient être clairs pour un programmeur C ++:

Voire aussi :
Passage de paramètres par référence
C ++ supporte les références en tant que paramètre de fonction de manière plus sûre que les paramètres.

Retour par référence
Vous pouvez renvoyer la référence d’une fonction comme tout autre type de données.

 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.