System.Dispose

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

procedure Dispose(var P: Pointer);

Propriétés

Type Visibilité  Source Unité  Parent
procedure public System.pas System System


Description

Libère la mémoire allouée à une variable dynamique.

Dispose libère la mémoire allouée à une variable pointeur allouée en utilisant System.New. Pour un pointeur ayant été alloué en utilisant System.GetMem, utilisez System.FreeMem pour libérer la mémoire allouée. Après l'appel à Dispose ou FreeMem, la valeur du pointeur qui lui est transmise est non définie.

Remarque : Si un pointeur sur de la mémoire non allouée est transmis à Dispose, le comportement de l'application dépend beaucoup de la plate-forme cible et s'effectue de la façon suivante :

  • Pour les plates-formes Windows, une exception EInvalidPointer est déclenchée dans des applications utilisant System.SysUtils et une erreur d'exécution est générée pour les applications qui n'utilisent pas System.SysUtils. (FastMM, le gestionnaire mémoire par défaut, peut détecter un pointeur non valide.)
  • Pour les plates-formes OS X et iOS, Dispose ne déclenche pas d'exception EInvalidPointer si un pointeur non valide est transmis à Dispose.

Voir aussi

Exemples de code