AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Wie verwendet man "Unterklassen" am besten?

Ein Thema von p80286 · begonnen am 1. Okt 2010 · letzter Beitrag vom 2. Okt 2010
 
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#7

AW: Wie verwendet man "Unterklassen" am besten?

  Alt 1. Okt 2010, 18:37
Du bist mit der TList vermutlich wirklich etwas zu kurz gesprungen. Wie gesagt : TobjectList und OwnsObjects sollte auf true stehen.

@Daniel : wäre gut, wenn man beim Schreiben sehen könnte, welche Delphi-Version eingesetzt wird.

So, der ganze Krempel, den man in die TObjectList packt, wird dann beim free der Liste auch komplettt weggeräumt. Das ist minimaler Aufwand. Du kannst ja sogar auch die Records komplett in die ObjectList packen. Die schluckt fast alles.

Hier mal noch, wie das ganze ungefähr aussieht :

Delphi-Quellcode:
TArtGrundDaten = record
  ID,
  nr : Integer;
  bez : string;
// stark verkürzt !!
end;

TDatenObjekt = class(TObject)
  GrundDaten : TArtGrundDaten;
end;

DatenObjektListe : TObjectList; // nimmt spezif. Daten von TDatenObjekt auf

for i := 0 to DatenObjektListe.Count - 1 do
  ArtAusgObjekt := TArtAusgObjekt (AusgObjektListe.Items[i]);
Ist das Letzte ein Typecast ? Die Nomenklatur ist da etwas ungenau. Nenne man das Konstukt, wie man will. Mir ists egal, weil es einwandfrei funktioniert ohne Nachteile.

Am Beispiel sieht man jedenfalls, wie man starre Records und Klassen kombinieren kann. Die Klassen, die den Record enthalten, werden an anderen Stellen jedenfalls noch OOP-mässig erweitert.
Gruß
Hansa
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz