Comprendre le mot-clé extern en C++

Muhammad Husnain 12 octobre 2023
  1. le mot-clé extern en C++
  2. Syntaxe de la variable externe et de la fonction externe en C++
  3. Avantages de l’utilisation du mot-clé extern en C++
Comprendre le mot-clé extern en C++

Cet article présentera le mot-clé extern en C++, la syntaxe des variables et fonctions externes, et les utilisations de ce mot-clé.

le mot-clé extern en C++

Le mot-clé extern désigne des variables externes ou globales et des fonctions externes. Ce mot-clé indique au compilateur que la variable est globale dans de nombreux fichiers source.

Le mot clé extern est très utile lors de la combinaison (liaison) de plusieurs fichiers source en un seul programme.

Les variables externes sont déclarées en dehors de la fonction principale juste après les fichiers d’en-tête. La portée des variables externes est globale et leur durée de vie est équivalente à celle des variables statiques (c’est-à-dire que la durée de vie est égale à la durée de vie du programme).

Syntaxe de la variable externe et de la fonction externe en C++

Les variables externes et les fonctions externes peuvent être déclarées à l’aide de la syntaxe suivante :

Syntaxe de la variable externe :

extern datatype variable_name;
Example : extern int a = 40;

Syntaxe de la fonction externe :

extern datatype function_name();
Example : extern int add();

Exemple:

Supposons que vous ayez deux fichiers source : first.cpp et second.cpp avec les codes suivants :

"first.cpp" Int a = 40;
Int b = 50;
Void add();
Int main() {
  add();
  return 0;
}
"Second.cpp" extern int a;
extern int b;
Void add() { a + b; }

Dans l’exemple ci-dessus, les variables a et b sont définies dans first.cpp. Ensuite, pour utiliser ces deux variables dans second.cpp, les deux doivent être déclarées.

Avantages de l’utilisation du mot-clé extern en C++

Voici les avantages de l’utilisation du mot-clé extern dans un programme C++ :

  • Le mot-clé extern informe le compilateur de l’existence des variables externes et de leur utilisation potentielle dans une autre unité de traduction ou fichier source.
  • Il augmente la visibilité des variables et des fonctions.
  • Ce mot-clé facilite la compréhension des erreurs telles que les erreurs de symboles en double.
  • Nous utilisons un mot-clé extern pour le linker moderne afin d’augmenter la lisibilité.
  • Il fait la maintenance du code.
Muhammad Husnain avatar Muhammad Husnain avatar

Husnain is a professional Software Engineer and a researcher who loves to learn, build, write, and teach. Having worked various jobs in the IT industry, he especially enjoys finding ways to express complex ideas in simple ways through his content. In his free time, Husnain unwinds by thinking about tech fiction to solve problems around him.

LinkedIn

Article connexe - C++ Keyword