Accueil        LEXIQUE        Unités        Algorithmes        Tutoriel   

Sommaire lexique

Constantes typées


Dans le cas des constantes typées, le type de données est également spécifié dans la déclaration. La forme générale d'une telle constante est:

const
    Name : Typ = valeur;
Exemples:

const
    max : integer = 999;
    eps : real = 1e-18;
    hello : string[11] = 'Hello world';
    lettres : set of char = [ 'A' .. 'Z', 'a' .. 'z' ];
Les constantes typées peuvent également être formées à partir de types tableau, enregistrement, objet, pointeur et procédure. Pour les types tableau, les valeurs des éléments individuels sont listées entre parenthèses, par exemple:

const
    tableau : array [ 0 .. 3 ] of byte = ( 0, 2, 3, 1 );
    matrix  : array [ 1 .. 3 , 1 .. 4 ] of real =
        ( ( 1.0, 0.0, 0.0, 0.0 ),
        ( 0.0, 1.0, 0.0, 0.0 ),
        ( 0.0, 0.0, 1.0, 0.0 ) );
Pour les types enregistrement et objet, le nom de champ de l'élément concerné doit être spécifié. Exemple:

type
    Donnee = record
        jour:   1..31;
        mois: 1..12;
        annee:  integer;
        end;

const
    termin : Donnee = (jour: 12; mois: 6; annee: 1992);
Dans le cas des types objets, aucune valeur n'est spécifiée pour les méthodes.

Pour les types pointeur, la valeur nil ou l'adresse d'une variable globale ou d'une constante typée peuvent être spécifiées. Exemple:

type
    Pointeurdenom = ^Entreedenom
    Entreedenom = record
        suivant: Pointeurdenom;
        nom: ^string;
        end;

const
    hugo : string = 'Hugo';
    entree : entreedenom = (suivant : nil; name : @hugo);
Pour les types Procédure et Fonction, le nom d'une procédure ou d'une fonction compatible doit être spécifié. Exemple:

type
    FatalProc = procedure(errorMessage : string);

procedure FatalError(errorMessage : string);
begin
    writeln(errorMessage);
    Halt(1);
end;

const
    fatalErrorHook : FatalProc = FatalError;
Les constantes typées dans Pure Pascal ne sont pas vraiment constantes - vous pouvez également leur attribuer des valeurs (pour des raisons de compatibilité avec Turbo Pascal). Cependant, nous déconseillons de telles pratiques - les constantes ne doivent pas changer, et si des variables initialisées sont nécessaires, celles-ci doivent être initialisées dans la partie d'initialisation de l'unité concernée.

Sommaire lexique


Copyright © 2021 par Albatros Concept (Bruno Aubin)