Le mot-clé const en C++

Migel Hewage Nimesha 12 octobre 2023
  1. Déclarer des variables Const en C++
  2. Utiliser le const avec des pointeurs en C++
  3. Variable de pointeur vers la variable const en C++
  4. la variable pointeur const vers une valeur en C++
  5. la variable de pointeur const vers la variable const en C++
  6. la fonction membre const et l’objet const en C++
Le mot-clé const en C++

Le mot-clé const, qui signifie Constant en C++, est utilisé pour rendre une ou plusieurs valeurs spécifiques constantes tout au long du programme.

Une fois qu’une variable/objet/fonction est déclarée stable, le compilateur ne laissera pas le programmeur modifier la valeur assignée pendant le reste du programme.

Il garantit que le programme s’exécute sans interruption pendant son exécution. Si le programmeur essaie de modifier la valeur ultérieurement, le compilateur affichera une erreur de compilation.

Le principal avantage du const est qu’il permet à une ou plusieurs valeurs spécifiques d’être constantes tout au long du programme. Comme mentionné précédemment, cela permettra également au compilateur d’effectuer des optimisations spécifiques qui ne seraient pas possibles autrement.

Le mot-clé const peut être utilisé de différentes manières spécifiques dans un programme pour répondre à différents besoins de programmation.

Déclarer des variables Const en C++

Lorsque vous rendez une variable constante, la variable doit toujours être initialisée lors de la déclaration. Une fois la variable dite, il est impossible de modifier sa valeur dans une autre partie du code.

Pour déclarer une variable comme une constante ;

const int x = 1;

Utiliser le const avec des pointeurs en C++

Il existe trois façons d’utiliser le mot-clé const avec des pointeurs.

  • Variable pointeur sur la valeur const.
  • La variable pointeur const vers une valeur.
  • Le pointeur const vers une variable const.

Variable de pointeur vers la variable const en C++

Cela signifie que le pointeur pointe sur une variable constante, on peut utiliser la valeur de la variable sur laquelle pointe le pointeur, mais on ne peut pas changer la valeur de la variable à l’aide du pointeur.

const int* y;

Il est avantageux de rendre une chaîne ou un tableau immuable.

la variable pointeur const vers une valeur en C++

Ici, le pointeur est une constante, mais la valeur du pointeur n’est pas constante ; il est donc possible de modifier sa valeur.

De plus, bien que nous modifions la valeur, nous ne pouvons pas modifier l’emplacement mémoire du pointeur. Il est indispensable lorsque le stockage change de valeur mais pas d’emplacement mémoire.

int z = 2;
const int* y = &z;

la variable de pointeur const vers la variable const en C++

Une fois les valeurs affectées dans cette situation, il est impossible de modifier la variable de pointeur ou la valeur de la variable vers laquelle pointe le pointeur.

int i = 3 const int* const j = &i;

la fonction membre const et l’objet const en C++

C++ est un langage de programmation orienté objet, et il existe des cas dans lesquels un objet créé n’est pas destiné à une recherche de modification au cours d’une partie du programme.

Par conséquent, rendre un objet constant à l’aide du mot-clé const peut être très utile dans des situations comme celle-ci. Si un objet doit être déclaré comme const, il doit être initialisé au moment de la déclaration.

Une fois l’objet initialisé, il est impossible de modifier les dimensions données à l’objet pendant le reste du programme.

Le compilateur lancera une erreur de compilation. Voici un exemple d’objet const.

#include <iostream>
using namespace std;

class length {
 public:
  int x;
  length(int y) { x = y; }
};

int main() {
  const length obj1(15);
  cout << "The length of object 1 is " << obj1.x << endl;
  return 0;
}

Production:

The length of object 1 is 15

Lorsqu’une fonction est déclarée suivie de const, une fonction constante est créée. Il est principalement utilisé avec des objets const.

Il est important de noter que si une fonction membre est appelée via un objet const, le compilateur générera une erreur, que la fonction membre ait l’intention de modifier l’objet ou non.

Voici un exemple de fonction membre const.

#include <iostream>
using namespace std;

class length {
 public:
  int x;
  length(int y) { x = y; }
  int getvalue() const { return x; }
};

int main() {
  const length obj1(15);
  cout << "The length of object 1 is " << obj1.getvalue() << endl;
  return 0;
}

Production:

The length of object 1 is 15

L’intérêt de const est qu’il ne permet pas de modifier des choses qui ne devraient pas être modifiées.

Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.

Article connexe - C++ Const