Qu'est-ce que la référence const dans C ++

Qu'est-ce que la référence const dans C ++
En C ++, les références sont comme des pointeurs mais ont des différences distinctes. Premièrement, les références ne peuvent pas se voir attribuer une valeur nulle. Deuxièmement, les opérations arithmétiques ne peuvent pas être effectuées sur des références. Troisièmement, une fois qu'une référence est initialisée, il ne peut pas être fait pour se référer à une autre variable. De plus, les références ne peuvent pas être déréférencées avec l'opérateur (*).

Quand il s'agit de passer des arguments aux fonctions, il existe trois façons de le faire:

  • Passer par valeur
  • Passer par référence
  • Passer par constante référence

Dans ce tutoriel, nous discuterons spécifiquement référence constante, sa déclaration et sa mise en œuvre en détail.

Qu'est-ce que la référence const en c++?

Une référence const en C ++ est une référence avec le mot clé const de const. C'est simplement une référence aux constantes. Lorsque nous initialisons une référence const, la valeur que les points de référence const ne peuvent pas être modifiés et il restera inchangé tout au long du code.

Déclarer une référence comme const est utile dans des situations où nous voulons empêcher les modifications de l'objet qui se réfèrent, tout en permettant un accès efficace à la valeur de l'objet.

Comment déclarer la référence const en c++?

En c++, référence constante peut être déclaré de la manière suivante:

  • Comme paramètres de fonction
  • Comme les variables des membres de la classe
  • En tant que variable locale

1: Déclarer la référence const comme paramètres de fonction

Lorsque nous déclarons une fonction pour prendre une référence const comme paramètre, il peut lire la valeur de l'objet référencé mais ne peut pas le modifier. Ceci est utile lorsque nous voulons passer un objet à une fonction sans permettre à la fonction de la modifier.

Ce qui suit est le code pour un tel cas:

#inclure
void printValue (const int & value)
std :: cout << "The value is: " << value << std::endl;

int main()
int Val = 15;
printValue (Val);
retour 0;

Ceci est une fonction nommée PrintValue qui prend une référence const à un entier en tant que paramètre et imprime la valeur de l'entier à la console.

Sortir

2: Déclarer la référence const comme variables des membres de la classe

Lorsqu'une variable de membre de classe est déclarée comme référence const, elle peut être initialisée dans la liste d'initialisation du constructeur puis utilisée dans toute la classe sans être modifiée. Cela peut aider à améliorer l'efficacité du code en évitant les copies et modifications inutiles des objets.

Ce qui suit est le code pour un tel cas:

#inclure
classe myClass
public:
MyClass (const int & value): m_value (valeur)
void printValue () const
std :: cout << "The value is: " << m_value << std::endl;

privé:
const int & m_value;
;
int main()
int Val = 15;
MyClass MyObject (Val);
myobject.printValue ();
retour 0;

Le code ci-dessus définit une classe qui a un constructeur qui prend une référence const à un entier en tant que paramètre et initialise une variable de membre privé M_Value avec. La classe a également une fonction membre PrintValue qui imprime la valeur de m_value à la console. Dans la fonction principale, un objet de type myclass est créé avec une valeur entière 15, et sa fonction printValue est appelée pour imprimer la valeur à la console.

Sortir

3: Déclarer la référence const comme variables locales

Une référence const peut également être utilisée comme variable locale pour référencer un objet existant sans en faire une copie.

Ce qui suit est le code pour un tel cas:

#inclure
int main()
int Val = 15;
const int & ref = val;
std :: cout << "Value: " << val << std::endl;
std :: cout << "Reference: " << ref << std::endl;
retour 0;

Dans le code ci-dessus, nous déclarons une valeur de variable entière et l'initialisons avec la valeur 15. Nous déclarons ensuite une référence constante à un renom entier et l'initialisons avec la valeur de la valeur.

Sortir

Conclusion

La référence const est une caractéristique utile en C ++, qui agit comme un pointeur, mais avec quelques différences importantes. Il ne peut pas modifier la valeur de la variable à laquelle elle est connectée et peut être utilisée de différentes manières, telles que les paramètres de fonction, les variables des membres de la classe et les variables locales. Pour mieux comprendre les cas d'utilisation des références const en C ++, cet article fournit des directives détaillées avec des exemples de codage pour chacune de ces façons.