Aya - Mi 04.12.02 03:52
Titel: Recursiven Record erstellen..
Hi,
kann ich irgendwie einen Recursiven Record erstellen???
Sowas wie z.B.
Quelltext
1: 2: 3: 4: 5: 6: 7:
| Type TBox = Record X: Integer; Y: Integer; Z: Integer; Box: TBox; end; |
So das ich halt in dem Record "TBox" denselben Record ein weiteresmal habe.. :)
So das ich irgendwann z.B. Box.Box.Box.Box.Box.Box.Box.X machen könnte...
Au'revoir,
Aya
PS: Ich brauche das ganze dafür:
Ich habe einen großen Würfel, TBox... ich unterteile diesen einen Würfel in 8 weitere, muß die irgendwo abspeichern... diese 8 Würfel unterteile ich wieder jeweils in 8 stück und auch das muß gespeichert werden... diese dann wieder jeweils in 8... usw.. und das beliebig oft :)
Für andere lösungsvorschläge bin ich auch dankbar
Klabautermann - Mi 04.12.02 07:12
Hallo,
das geht so nicht, da Delphi in dem Fall Theoretisch ja unentlich viel Speicher reservieren müsste.
Du kannst aber eine Verkettete Liste erstellen:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| Type PBox = ^TBox; TBox = Record X: Integer; Y: Integer; Z: Integer; Box: PBox; end; |
Dann musst du nur für jede Instanz den Speicher selber Reservieren (NEW). In
diesem Topic [
http://www.auq.de/viewtopic.php?t=2667], ziemlich weit unten habe ich mal ein paar grunglegende funktionen auf Basis von verketteten Listen zusammengefasst. Das könnte dir vieleicht helfen.
Gruß
Klabautermann