ALLOC |
Allocation |
---|---|
Pascal |
Syntaxe
Procedure ALLOC(Var p:pointer-type); |
Procedure ALLOC(Var p:pointer-type;t:variant-type); |
Paramètres
Nom | Description |
---|---|
p | Ce paramètre permet d'indiquer la composante. |
t | Ce paramètre permet d'indiquer la valeur du champ de balise. |
Description
Cette procédure permet d'allouer de la mémoire dynamiquement pour une composante. Dans la première syntaxe, la procédure alloue une nouvelle composante dans la classe à laquelle le pointeur de la variable est lié et attribue le pointeur désignant la nouvelle composante au paramètre p. Si le type de la composante est d'un type d'enregistrement avec des variantes, alors il s'agit d'une fiche. Dans la deuxième syntaxe, la procédure peut être utilisé pour allouer une composante de la variante dont la valeur du champ de balise est le paramètre t. Cependant, cette affectation n'implique pas une affectation au champ de balise. Si la classe est déjà allouée de manière complète, la valeur NIL sera écrite dans le paramètre p.
Algorithme
MODULE ALLOC(Ref Pointeur,Taille) SI Taille > 0 ALORS Allouer un bloc de mémoire de Taille octets SI la mémoire est allouée avec succès ALORS Affecter l'adresse du bloc de mémoire au Pointeur SINON Définir Pointeur à NIL (aucune mémoire allouée) FIN SI FIN SI |
Remarque
- La procédure alloc est mentionné dans la documentation Pascal de novembre 1970 de Niklaus Wirth dans la section «10.1.2 Class component allocation procedure»
Dernière mise à jour : Mercredi, le 10 avril 2019