Thema: Delphi Zeiger freigeben

Einzelnen Beitrag anzeigen

Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#6

Re: Zeiger freigeben

  Alt 20. Jun 2005, 12:56
  • Sollte PTestRecord nicht eher im Konstruktor "gefüllt" werden?
  • Destroy ist keine normale Prozedur, sondern ein Destruktor. Man sollte immer den Destruktor der Basisklasse überschreiben und am Ende inherited aufrufen:
    Delphi-Quellcode:
    destructor TTestClassA.Destroy;
    begin
      Dispose(PTestRecord);
      inherited;
    end;
  • TestClassA.Destroy; Du solltest immer Free statt Detroy zum Freigeben einer Instanz aufrufen. Wenn du den Destruktor wie oben beschrieben korrigierst, wird bei Free auch dein eigener aufgerufen.
  • Delphi-Quellcode:
    Result := List;
      List.Free;
    ?
  • Nimm doch statt der Prozedur GetList eine read-only Property.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat