System.SysUtils.EInvalidPointer
Delphi
EInvalidPointer = class(EHeapException);
C++
class PASCALIMPLEMENTATION EInvalidPointer : public EHeapException
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
class | public | System.SysUtils.pas System.SysUtils.hpp |
System.SysUtils | System.SysUtils |
Beschreibung
EInvalidPointer ist die Exception-Klasse für ungültige Zeigeroperationen.
EInvalidPointer wird ausgelöst, wenn eine Anwendung eine ungültige Zeigeroperation durchzuführen versucht. Beispielsweise wenn eine Anwendung versucht, denselben Zeiger zweimal freizugeben, oder auf einen Zeiger verweist, der bereits freigegeben wurde.
Hinweise:
- Lösen Sie eine EInvalidPointer-Exception nie direkt aus. EInvalidPointer wird intern vom Speichermanager ausgelöst.
- Wenn ein Zeiger auf nicht zugewiesenen Speicher an Dispose oder FreeMem übergeben wird, hängt das Verhalten der Anwendung weitgehend von der Zielplattform ab:
- Windows-Plattformen: In Anwendungen, die System.SysUtils verwenden, wird EInvalidPointer ausgelöst, und für Anwendungen, die System.SysUtils nicht verwenden, wird ein Laufzeitfehler erzeugt. (FastMM, der Standard-Speichermanager, kann ungültige Zeiger ermitteln.)
- OS X- und iOS-Plattformen: Dispose und FreeMem lösen keine EInvalidPointer-Exception aus, wenn ein ungültiger Zeiger an sie übergeben wird.