System.SysUtils.EInvalidPointer

提供: RAD Studio API Documentation
移動先: 案内検索

System.SysUtils.EHeapExceptionSystem.SysUtils.ExceptionSystem.TObjectEInvalidPointer

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 は、メモリ マネージャによって内部的に発生します。
  • 割り当てられていないメモリを指すポインタが DisposeFreeMem に渡された場合、アプリケーションの動作は、以下のように、主にターゲット プラットフォームによって決まります。
    • Windows プラットフォームの場合、System.SysUtils を使用しているアプリケーションでは EInvalidPointer が発生し、System.SysUtils を使用していないアプリケーションでは実行時エラーが発生します。なお、デフォルトのメモリ マネージャ FastMM では無効なポインタを検出できます。
    • Mac OS X プラットフォームと iOS プラットフォームの場合は、DisposeFreeMem に無効なポインタが渡されても、EInvalidPointer 例外は発生しません。

関連項目