![]() |
Pascal Record der Pointer vom Record benutzt
Hi,
Delphi-Quellcode:
Da gibt es einen Fehler wegen dem Pointer von dem Record. Ich glaub ich muss da was mit forward machen. Komm aber grad nicht drauf!
type TNode = record
Fx: integer; Fy: integer; Fz: integer; FFather: ^TNode; FConnectd: array of ^TNode; end; |
AW: Pascal Record der Pointer vom Record benutzt
Hallo Christian,
Du solltest erst einen Typ von Deinem Pointer auf den Record erstellen. FConnectd deklarierst Du dann ebenfalls von diesem Typen. VG Pixfreak |
AW: Pascal Record der Pointer vom Record benutzt
Einfach eine forward Deklaration eines Pointertyps.
Delphi-Quellcode:
type
PNode = ^TNode; TNode = record Fx: integer; Fy: integer; Fz: integer; FFather: PNode; FConnectd: array of PNode; end; |
AW: Pascal Record der Pointer vom Record benutzt
Ok danke!
Manchmal sieht man vor lauter Bäumen den Wald nicht!:oops: |
AW: Pascal Record der Pointer vom Record benutzt
Jupp, abgesehn von der einen Ausnahme, der Forward-Pointer-Deklaration, greift quasi alles erstmal auf den TNode-Type zu
und da TNode zu diesem Zeitpunkt noch nicht vollständig deklariert ist, kann dieses auch nicht benutzt werden. PS: Bei Klassen/Objekten ist was was anderes, da dort der Klassen-Type selber eine Art Zeiger-Typ ist und dort die Größe des Zeigers (der späteren Objektvariable) praktisch schon feststeht. |
AW: Pascal Record der Pointer vom Record benutzt
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:36 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-2025 by Thomas Breitkreuz