Variable globale

Un article de Wikipédia, l'encyclopédie libre.

En programmation informatique, une variable globale est une variable déclarée à l'extérieur du corps de toute fonction ou classe, et pouvant donc être utilisée n'importe où dans le programme.

Sommaire

[modifier] Exemple de variable globale en langage C++

#include <iostream>
 
int global = 3; // Une variable globale
 
void ChangeGlobal()
{
   global = 5; // Référence à la variable globale à l'intérieur d'une fonction
}
 
int main()
{
   std::cout << global << '\n'; // Référence à la variable globale dans une autre fonction
   ChangeGlobal();
   std::cout << global << '\n';
   return 0;
}

La variable étant globale, il n'est pas nécessaire de la passer comme paramètre pour l'utiliser dans les fontions. La variable globale appartient à toutes les fonctions du programme.

La sortie sera :

3
5

[modifier] Avantages et inconvénients

Avantages

Les variables globales pouvant être utilisées partout dans un programme sans avoir été transmises préalablement en paramètres de fonction, leur utilisation simplifie la conception et l'écriture de programme.

Inconvénients

Par contre, l'utilisation de ces variables rend plus difficile la compréhension d'un programme ainsi que son débogage et sa modification ultérieure.

Lors du déboggage, lorsqu'une variable globale contient une information erronée, il est très difficile de trouver la source de l'erreur parce que la variable a pu être modifiée dans n'importe quelle partie du programme.

Lors des modifications à un programme, il est complexe de modifier le traitement d'une variable globale parce qu'il faut comprendre tout le programme pour savoir comment la variable était traitée dans le programme original étant donné que la variable peut être modifiée n'importe où dans le programme.

Recommandation

Les inconvénients des variables globales étant plus grands que ses avantages, il est déconseillé d'utiliser ces variables dans la conception de programme.

Malheureusement, certains programmeurs ont recours à ces variables pour accélérer les premières phases du développement d'un programme. Ils en paient souvent le prix lorsque vient le temps de corriger leur programme ou de le modifier pour l'adapter aux nouveaux besoins de leur client.

[modifier] Langages sans variables globales

L'environnement de développement Gambas (clone GNU de Visual Basic) n'admet pas de variables globales. Cependant, une variable quelconque déclarée PUBLIC y devient accessible depuis tout le projet.

Les langages fonctionnels purs, comme Haskell, n'ont pas de variables du tout, donc pas de variables globales.

[modifier] Voir aussi

[modifier] Articles connexes

Ce document provient de « http://fr.wikipedia.org/wiki/Variable_globale ».
Créer un livre