Syntaxe...
Description...
Exemple...
Voir aussi...
Traduction...
Attribut de Type
. Définition d'un constructeur d'un objet d'un type en un objet du type courant.
Définition du corps d'un constructeur d'un objet d'un type.
Constructeur (
ListeDeParametres )
TypeAcces Constructeur
NomDUnType (
ListeDeParametresDUnAppel )
CorpsDUneProcedureOuDUneFonction
Fin Constructeur
Revenir en haut de la page...
Constructeur
permet de déclarer une méthode spéciale dont le but est de construire un objet du type en cours de définition à partir d'un ou plusieurs objets. Cette construction engendre la création d'un nouvel objet du type courant dont l'initialisation des propriétés est à la charge de la méthode définie par l'instruction Constructeur
.
Le constructeur n'alloue pas l'objet, il ne fait que l'initialiser d'une manière particulière. L'allocation de l'objet est réalisée par la méthode Allouer.
Pour chaque, il peut exister un constructeur implicite utilisé lors de la déclaration d'un objet de ce type. L'effet du constructeur implicite a pour effet d'initialiser chaque propriété à la valeur par défaut de son type. Ce constructeur implicite se déclare par Constructeur()
.
Si le constructeur implicite n'est pas déclaré, toutes les variables et tous les propriétés de ce type doivent être déclarés en Nul Ou.
La définition par défaut du constructeur implicite peut être surchargée.
Pour les types paramétrés, les constructeurs possèdent des premiers paramètres implicites identiques aux paramètres du type.
Revenir en haut de la page...
Type A
C1 : Entier;
Fin Type
C2 : Reel;
Constructeur(P1 : Entier);
/* Le type A possède un constructeur explicite mais pas de constructeur implicite. */
Type B
C3 : Date;
Fin Type
C4 : Fichier;
C5 : ReferenceDe Nul Ou A;
Constructeur();
Constructeur(P1 : A);
/* Un constructeur implicite est défini pour B. */
Type C(P1:Entier, P2:Enumere, P3:Type)
C6 : Entier;
Fin Type
C7 : Date;
Constructeur();
/* C possède un constructeur sans paramètre. Il n'est pas implicite comme le type possède trois paramètres. */
Constructeur A(P1 : Entier)
/* Corps du constructeur de A. */
...
Fin Constructeur
Constructeur C(P1:Entier, P2:Enumere, P3:Type)
/* Corps du constructeur de C. */
...
Fin Constructeur
Variable
V1 : Nul Ou A;
/* V1 doit accepter Nul du fait de l'abscence de constructeur implicite pour le type A. */
V2 : B;
/* V2 est automatiquement initialisée. */
V3 : Nul Ou C(2,Booleen,Caractere);
/* V3 est de type C qui a trois paramètres. */
Principal
Debut
V1=A(10);
/* Construction de V1. */
V2=B(V1);
/* Construction de V2. La valeur d'initialisation ne sert a rien en ce cas. */
V3=C(2,Booleen,Caractere);
/* Construction de V3. */
Fin Principal
Erbauer | Constructor | 建设者 | Constructor | - | - | - | - |