Destructor/de

From Free Pascal wiki
Revision as of 14:27, 21 April 2013 by Olaf (talk | contribs)
Jump to navigationJump to search

Deutsch (de) English (en) suomi (fi)

Zurück zu den reservierten Wörtern.

Das Schlüsselwort destructor gehört zur objektorientierten Programmierung.
Ein Destruktor dient dazu, den verwendeten Arbeitsspeicher wieder freizugeben.
Der Destruktor ist immer so aufzubauen, dass bei der Freigabe des Speichers der gesamte für die Klasse (das Objekt) angeforderte Speicher freigegeben wird und somit keine Speicherlecks entstehen.
D. h. alle Klassen und Objekte die von der eigenen Klasse verwendet werden sind über Ihren Destruktor zu beenden.

Beispiel:

// Klassendefinition
type
  TKlasse = class
    destructor Destroy; override;  // Erlaubt es den Destruktor der Elternklasse zu überschreiben
  end;

// Destruktor der eigenen Klasse
destructor TKlasse.Destroy;
begin
  ...
  inherited; // Ruft den Destruktor der Elternklasse auf
end;

var
// Variable vom Typ der Klasse bekannt machen (deklarieren)
  meineKlasse: TKlasse;

begin
  ...
  meineKlasse := TKlasse.Create; // Create ruft den Konstruktor der eigenen Klasse auf
  meineKlasse.Destroy;           // Destroy ruft den Destruktor der eigenen Klasse auf
  ...
end.



--Olaf 17:27, 24 October 2012 (UTC)