System.Dispose

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

Delphi

procedure Dispose(var P: Pointer);

プロパティ

種類 可視性 ソース ユニット
procedure public System.pas System System

説明

動的変数用に割り当てられたメモリを解放します。


Dispose は、System.New を使って割り当てられたポインタ変数のメモリを解放します。System.GetMem を使って割り当てられたポインタの場合は、System.FreeMem を使用して、割り当てられたメモリを解放します。Dispose または FreeMem の呼び出し後、引数として渡されたポインタの値は未定義になります。

メモ: 割り当てられていないメモリを指すポインタが Dispose に渡された場合、アプリケーションの動作は、以下のように、主にターゲット プラットフォームによって決まります。

  • Windows プラットフォームの場合、System.SysUtils を使用しているアプリケーションでは EInvalidPointer が発生し、System.SysUtils を使用していないアプリケーションでは実行時エラーが発生します。なお、デフォルトのメモリ マネージャ FastMM では無効なポインタを検出できます。
  • Mac OS X プラットフォームと iOS プラットフォームの場合は、Dispose に無効なポインタが渡されても、Dispose では EInvalidPointer 例外は発生しません。

関連項目

コード例