Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: Mehrere Klasseninstanzen in einem Array/einer TList

  Alt 3. Mai 2005, 15:50
Zitat von Marphy:
Ich habe in meinem Projekt zwei Klassen, nennen wir sie TMainClass und TSubClass. TMainClass hat einen Member, nämlich eine TList bzw. ein Array (was sich besser eignet, ist glaube ich die TList - dies variiert aber je nach möglicher Lösung)
Eine TList ist definitiv besser geeignet; noch besser ist allerdings TObjectList.
Jetzt musst du entscheiden, ob TMainClass der Besitzer (owner) von sämtlichen TSubClass Objekten ist. (davon gehe ich jetzt mal aus)
Wenn du TObjectList.Create() mit dem Parameter AOwnsObjects=True ausrufst, dann brauchst du dich um die Freigabe der TSubClass Objekten nicht mehr zu kümmen.
Dennoch kannst du einzelne TSubClass-Objekte selektiv löschen.
Delphi-Quellcode:
procedure TMainClass.AccessInst(Idx: Integer);
var
   subobj : TSubClass;
begin
   subobj := TSubClass(FObjectList.Items[Idx]);
   subobj.Irgendwas := ...
end;
Andreas
  Mit Zitat antworten Zitat