Les références en C++

Qu'est-ce qu'une variable de référence ?

Dans le langage de programmation C++, une variable de référence agit comme un alias pour un autre objet. Elle est définie à l'aide du symbole &. Il est essentiel de garder à l'esprit deux aspects clés :

  1. Toute modification effectuée sur la référence impacte également l'original.
  2. Une fois créée, une référence ne peut pas être réassignée pour pointer vers un autre objet.

Exemple de syntaxe

int &alias = varname;

Passage par référence

Le passage par référence en C++ implique de transmettre des paramètres à une fonction en utilisant des références. Cette méthode a plusieurs avantages :

  • Permet de modifier directement la valeur des arguments de la fonction.
  • Évite la création de copies de variables ou objets, ce qui améliore la performance.

Exemple de code :

void swap_num(int &i, int &j) {  
    int temp = i;  
    i = j;  
    j = temp;
}

int main() {  
    int a = 100;  
    int b = 200;  
    swap_num(a, b);  
    std::cout << "A est " << a << "\n";  
    std::cout << "B est " << b << "\n";
}

Références constantes

En C++, il est possible d'utiliser des références constantes lors du passage de paramètres à une fonction. Cela s'effectue lorsque l'on sait que les paramètres ne seront pas modifiés à l'intérieur de la fonction. Cette approche permet d'économiser les ressources de calcul en évitant la duplication des arguments.

Exemple de code :

int triple(int const &i) {  
    return i * 3;
}