System.SysUtils.EInvalidPointer
Delphi
EInvalidPointer = class(EHeapException);
C++
class PASCALIMPLEMENTATION EInvalidPointer : public EHeapException
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
class | public | System.SysUtils.pas System.SysUtils.hpp |
System.SysUtils | System.SysUtils |
Description
EInvalidPointer est la classe des exceptions pour les opérations incorrectes sur des pointeurs.
EInvalidPointer est déclenchée quand une application tente une opération incorrecte sur des pointeurs. Par exemple, cette exception se produit si une application essaye de libérer deux fois le même pointeur ou de faire référence à un pointeur déjà libéré.
Remarques :
- Ne déclenchez jamais directement d'exception EInvalidPointer. EInvalidPointer est déclenchée en interne par le gestionnaire de mémoire.
- Si un pointeur sur de la mémoire non allouée est transmis à Dispose ou FreeMem, 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 et FreeMem ne déclenchent pas d'exception EInvalidPointer si un pointeur non valide leur est transmis.