NEW |
Nouveau |
---|---|
Free Pascal | System |
Syntaxe
Procedure New(var P:Pointer); |
Procedure New(var P:Pointer;Cons:TProcedure); |
Paramètres
Nom | Description |
---|---|
P | Ce paramètre retourne un pointeur |
Cons | Ce paramètre permet d'indiquer le constructeur. |
Description
Cette procédure permet d'allouer de la mémoire dynamique pour une variable.
Remarques
- La procédure New alloue une nouvelle instance du type pointé par P, et met l'adresse dans P. Si P est un objet, alors il est possible de spécifier le nom du constructeur avec lequel l'instance sera créée.
- La mémoire nouvellement allouée n'est en aucun cas initialisée et peut contenir des données inutiles. Il doit être effacé avec un appel à FillChar ou FillWord.
Exemple
Voici un exemple d'une utilisation typique de cette procédure :
- Program NewSamples;
-
- Uses SysUtils;
-
- Type
- personne=Record
- salutation:Char;
- prenom:String[30];
- nomfamille:String[30];
- ville:String[30];
- pays:String[30];
- province:String[30];
- End;
-
- Var
- a:^personne;
-
- BEGIN
- New(a);
- If(a <> NIL)Then Begin
- a^.salutation := 'M';
- a^.prenom := 'Sylvain';
- a^.nomfamille := 'Maltais';
- a^.ville := 'Laval';
- a^.pays := 'CA';
- a^.province := 'QC';
- WriteLn('Prénom : ',a^.prenom);
- WriteLn('Nom : ',a^.nomfamille);
- WriteLn('Ville : ',a^.ville);
- Dispose(a);
- End
- Else
- Begin
- WriteLn('Manque de mémoire');
- End;
- END.
on obtiendra le résultat semblable suivant :
Prénom : SylvainNom : Maltais
Ville : Laval
Voir également
Langage de programmation - Free Pascal - Référence de procédures et fonctions - Dispose
Langage de programmation - Free Pascal - Référence de procédures et fonctions - FreeMem
Langage de programmation - Free Pascal - Référence de procédures et fonctions - GetMem
Dernière mise à jour : Samedi, le 18 juillet 2015