System.SysUtils.EInvalidPointer

Delphi
EInvalidPointer = class(EHeapException);
C++
class PASCALIMPLEMENTATION EInvalidPointer : public EHeapException
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | System.SysUtils.pas System.SysUtils.hpp |
System.SysUtils | System.SysUtils |
説明
EInvalidPointer は、ポインタ操作が無効であることを示す例外クラスです。
EInvalidPointer が発生するのは、アプリケーションで無効なポインタ操作が行われようとしたときです。たとえば、アプリケーションで同じポインタを 2 回破棄しようとした場合や、既に破棄されているポインタを参照した場合などに発生する可能性があります。
メモ:
- EInvalidPointer 例外を直接発生させないでください。EInvalidPointer は、メモリ マネージャによって内部的に発生します。
- 割り当てられていないメモリを指すポインタが Dispose や FreeMem に渡された場合、アプリケーションの動作は、以下のように、主にターゲット プラットフォームによって決まります。
- Windows プラットフォームの場合、System.SysUtils を使用しているアプリケーションでは EInvalidPointer が発生し、System.SysUtils を使用していないアプリケーションでは実行時エラーが発生します。なお、デフォルトのメモリ マネージャ FastMM では無効なポインタを検出できます。
- Mac OS X プラットフォームと iOS プラットフォームの場合は、Dispose や FreeMem に無効なポインタが渡されても、EInvalidPointer 例外は発生しません。