System.SysUtils.EInvalidPointer

De RAD Studio API Documentation
Aller à : navigation, rechercher

System.SysUtils.EHeapExceptionSystem.SysUtils.ExceptionSystem.TObjectEInvalidPointer

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.

Voir aussi