Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Record mit Pointer auf Record des gleichen Typs (https://www.delphipraxis.net/60150-record-mit-pointer-auf-record-des-gleichen-typs.html)

Delphi-Freak 3. Jan 2006 21:14


Record mit Pointer auf Record des gleichen Typs
 
Hi!

Ich möchte in einem Record drinnen einen Pointer auf einen anderen Record mit dem gleichen Typ speichern.
Jetzt gibt es nur das Problem, dass wenn ich den Pointer zuerst definiere der Typ selbst nicht definiert ist, und wenn ich den Typ selbst zuerst definiere, der Pointer nicht. Hier eine kleine Veranschaulichung:
Delphi-Quellcode:
type
   PMyRec = ^TMyRec; //Compiler schreit auf, weil TMyRec noch nicht definiert ist
   TMyRec = record
      //...
      andererRec: PMyRec;
   end;
Delphi-Quellcode:
type
   TMyRec = record
      //...
      andererRec: PMyRec; //Compiler schreit auf, weil PMyRec noch nicht definiert ist
   end;
   PMyRec = ^TMyRec;
Gibt es da irgendeine Möglichkeit, das so wie bei Klassen zu umgehen:
Delphi-Quellcode:
type
   TMyClass = class;
   PMyClass = ^TMyClass;
   TMyClass = class
   private
      andereClass: PMyClass;
   end;
LG, ich

jim_raynor 3. Jan 2006 21:18

Re: Record mit Pointer auf Record des gleichen Typs
 
Variante 1 müsste eigentlich klappen. Wichtig ist nur, dass kein type mehr dazwischen steht.

Khabarakh 3. Jan 2006 21:19

Re: Record mit Pointer auf Record des gleichen Typs
 
Zitat:

Zitat von Delphi-Freak
Delphi-Quellcode:
type
   PMyRec = ^TMyRec; //Compiler schreit auf, weil TMyRec noch nicht definiert ist
   TMyRec = record
      //...
      andererRec: PMyRec;
   end;

Tut er nicht, probier es mal aus :wink: .

[edit]Roter Kaste, wo bist du :gruebel: ? [/edit]

jim_raynor 3. Jan 2006 21:21

Re: Record mit Pointer auf Record des gleichen Typs
 
Mmmh. Bei Delphi 5 und bei Delphi 7 klappt das ...

Delphi-Freak 3. Jan 2006 21:25

Re: Record mit Pointer auf Record des gleichen Typs
 
Aber bei Delphi 2005 (Personal) leider nicht :gruebel:

Edit:
^^Nicht lesen, das da oben...

Ich TROTTEL!!! :duck:
Ich wäre mir sicher gewesen, es hätte nicht funktioniert, und auf einmal funtionierts doch.
Vielen Dank, euch beiden für eure mehr oder minder sinnlosen Mühen. :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:44 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