Einzelnen Beitrag anzeigen

Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#15

AW: Destruktor für verkettete Liste

  Alt 13. Jan 2021, 14:14
Hallo Stahli,

Das Freigeben und auf NIL setzen, kann man auch mit einem Rutsch erledigen: FreeAndNil(Person1)
Ja, das hatte ich auch so mitbekommen. Aber beinhaltet das dann auch die anderen Objekte (in dem Fall den Rest der Kette)
OK... Nochmal vom Anfang an.

Delphi-Quellcode:
TListe = class
    private
    inhalt: string;
    next: Tliste;
    public
    constructor create(wert: string);
    destructor destroy; override;
    function gibmirinhalt: string;

  end;
Klar kann man Objekte (Class) für eine verkettete Liste nehmen. Wie setzt du next?


Delphi-Quellcode:
Type
  PStringItem = StringItem;
  StringItem = Record
                  Inhalt : String;
                  Next : PStringItem;
                end;
var
  Root : PStringItem;

Währe eher mein Ansatz für eine verkette Liste. Oder:

Delphi-Quellcode:
Type
  IStringItem = Interface
   ['{CCB4015D-A7A8-44D1-910B-ADC1847C0BC4}']
    Function GetInhalt : String;
    Procedure SetInhalt(Const aValue : String);
    Property Inhalt : String read GetInhalt write SetInhalt;
  end;

  TStringItem = Class(TInterfacedObject,IStringItem)
    private
      Function GetInhalt : String;
      Procedure SetInhalt(Const aValue : String);
    private
      fInhalt : String;
    public
      Constructor Create(Const aInhalt : String);
  end;

var
  StringList : array of IStringItem;

Ein Setlength(StringList,0) löscht alle Deine Elemente...

Mavarik
  Mit Zitat antworten Zitat