Einzelnen Beitrag anzeigen

Benutzerbild von Flogo
Flogo

Registriert seit: 24. Mär 2003
Ort: Freiburg im Breisgau
317 Beiträge
 
Delphi 7 Professional
 
#6

Re: Record und Array forwarded deklarieren

  Alt 23. Mai 2005, 12:31
Zitat von alzaimar:
Doch, es ist unendlich. Du versuchst zwar, mit einem dynamischen Array das Problem der Unendlichkeit zu umgehen (Dein 'flomp' ist ja in Wirklichkeit ein Pointer), aber Delphi lässt das eben nicht zu(Aus gutem Grund). Was du machen willst, ist Folgendes;
Delphi-Quellcode:
Type
  PMyRecord = ^TMyRecord; // erlaubt, obwohl TMyRecord noch nicht definiert ist
  TMyRecord = Record
    mrFoo : Integer;
    mrBar : Array of PMyRecord;
    End;
So hab ich das auch gelöst (musste ich weil Records mit Variant-Teil nur Pointer auf Records, Arrays und Objekte zulassen)

Aber ich denke trotzdem nicht das mein Beispiel zwangsläufig unendlich werden würde. Angenommen ich habe am Anfang ein Record (R).
Dann habe ich da drin auf jeden Fall ein Array (R.A)
Diesem Array kann ich zum Beispiel die Länge 2 geben. Dadurch bekomme ich 2 neue Records (R.A[0] und R.A[1])
Jeder dieser Records hat wieder ein Array (R.A[0].A und R.A[1].A) Wenn ich jetzt aber diesen beiden Arrays die Länge 0 gebe, hört es hier auf.
Es würde sich doch theoretisch ein Baum bilden der an jedem Knoten (Record) so viele neue Äste hat wie das Array (Length(Array)). Am Ende dieses Baumes hat man überall ein Array der Länge 0.
If one coincidence can occur, then another coincidence can occur. And if one coincidence happens to occur just after another coincidence, then that is just a coincidence.
DNA

www.Anyxist.de
  Mit Zitat antworten Zitat