Déclaration (informatique)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir Déclaration.

En programmation informatique, la déclaration permet d'indiquer au compilateur l'existence d'une entité informatique (variable, routine, etc.) , en spécifiant:

Avec certains langages de programmation, notamment le langage C/C++, il est nécessaire de déclarer les entités informatiques avant de pouvoir les utiliser.

Déclaration et définition[modifier | modifier le code]

Il faut bien différencier la déclaration et la définition. Alors que la déclaration ne fait qu'indiquer l'existence d'une entité informatique sans la créer, la définition l'instancie, c'est-à-dire qu'elle la crée. Par exemple, l'implémentation d'une routine est sa définition.

Exemple très simple en langage C
Déclaration Définition
Variable
extern int Var;
int Var;
Fonction
int Somme ( int Var1, int Var2 );
int Somme ( int Var1, int Var2 )
{
    return Var1 + Var2;
}

Dans certains langages de programmation, tel que le langage C/C++, la définition inclut la déclaration, ce qui signifie que la présence de la définition dans une unité (module) d'un programme permet d'y omettre la déclaration.

Précision du type de l'entité informatique dans la déclaration[modifier | modifier le code]

Une déclaration (et par conséquent une définition) comporte souvent un type; c'est le type retournée par l'entité informatique. Voici par exemple la définition d'un entier, valable dans plusieurs langages de programmation :

int i;

Dans d'autres langages, le type n'a pas besoin d'être précisé ; il sera déterminé en fonction de l'initialiseur de la variable. Par exemple, avec C++1x, cette instruction définit une variable de type caractère :

auto c = '.';

Ce concept s'appelle l'inférence de types.

Liste de déclarations[modifier | modifier le code]

Il est souvent possible de définir plusieurs variables en une seule instruction. Par exemple, en langage C :

int i, j;

Leur type doit alors être commun (ici entier).