![]() |
Re: Problem mit Klasse und Record
Zitat:
|
Re: Problem mit Klasse und Record
Ich schließe mich Jelly an:
Die Records sind wesentlich verschieden, also erstelle zwei verschiedene Klassen, abgeleitet von TObject. Du brauchst dafür eigentlich nur Konstruktor und Destruktor sowie je zwei Eigenschaften, um auf die Felder zuzugreifen: Zitat:
Zitat:
Delphi-Quellcode:
Es handelt sich programmtechnisch um gleichartige Listen, weil sie jeweils "nur" Zeiger auf Objekte enthalten. Dass in List1 Objekte vom Typ TData enthalten sind und in List2 solche vom Typ TData2, musst Du Dir als Programmierer selbst merken und entsprechend berücksichtigen:
var List1, List2: TObjectList; // <-- !!!
// List1 := TObjectList.Create; List2 := TObjectList.Create; List1.Add(Instanz von TData); List2.Add(Instanz von TData2);
Delphi-Quellcode:
Aber das sollte doch möglich sein.
var d1: TData;
... d1 := (TData)List1.Items[23]; Ein solches Verfahren über TObjectList ist mit Sicherheit einfacher und praktikabler, als eigene Listen zu definieren und alle Zugriffe von Records (Add, Remove, Insert, Exchange usw.) selbst zu programmieren. Jürgen |
Re: Problem mit Klasse und Record
Du kannst sogar alle Objekte TD1 und TD2 in der gleichen Liste verwalten... Mit dem is Operator kannst du die Einträge deiner Liste auf deinen Klassentypen überprüfen.
Aber 2 Listen sind wohl eher angebracht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:30 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