Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi LinkedList auch in Delphi 7??? (https://www.delphipraxis.net/91984-linkedlist-auch-delphi-7-a.html)

Mussi0 12. Mai 2007 21:52


LinkedList auch in Delphi 7???
 
Hallo zusammen,

ich habe ein Problem und zwar brauche ich eine Art LinkedList wie in Java in Delphi.
Leider kann ich nichts finden, im Bezug auf eine solche!!

Ich habe eine TList oder aber auch eine TObjectList gefunden, nur sind diese, soweit ich das
weis, nur eindimensional.

Aber ich bräuchte eine zweidimensionale TList/TObjectList.

Außerdem habe ich noch ein Problem mit der Rückgabe einer TList!!

Hier mal der Code:
Delphi-Quellcode:
Type
  TField = class
    private
      FCellkey : TList;
      procedure SetCellkey(CellKey : TCellKey);
    public
      property CellKey : TList read FCellkey write SetCellkey;
   end;
procedure TField.SetCellkey(CellKey : TCellKey);
begin
  FCellkey.add(Cellkey);
end;
Bei der Property sagt mir der Compiler an der Stelle "...SetCellkey..." das es inkomplatible Datentypen
wäre nur ich habe leider keine Ahnung was der meint bzw. was falsch ist.

Ich hoffe ihr könnt mir weiter helfen.

Gruß
muss!0

3_of_8 12. Mai 2007 22:02

Re: LinkedList auch in Delphi 7???
 
Ganz einfach: Die Property ist vom Typ TList, SetCellKey erwartet einen TCellKey.

Mussi0 12. Mai 2007 22:09

Re: LinkedList auch in Delphi 7???
 
Hi,

Ja schon aber in die TList soll Objekte vom Typ TCellkey
enthalten. Und daher übergebe ich ein Objekt vom Typ TCellkey um diesen
dann in die TList zu schreiben.

Geht das irgendwie?

Gruß

muss!0

3_of_8 12. Mai 2007 22:48

Re: LinkedList auch in Delphi 7???
 
In Delphi gibt es keine Generics. Du musst dir einen Setter schreiben, der das für dich castet.

Such mal nach meiner TCyclicList in der Code Library, das ist ne doppelt verknüpfte Liste, die zyklische Funktion kannste relativ leicht entfernen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:46 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz