Was die Typdeklaration angeht, kann ich mich erinnern, daß zuerst alle "Namen" gesammelt werden, und dann erst diesen Namen die entsprechenden Typen zugewiesen werden.
also ungefähr so:
Delphi-Quellcode:
Type
prec =^rectyp;
rectyp = record..........end;
rec =^record..........end;
rectyp = record..........end;
Wenn man es mit dem zweiten Konstrukt versucht, bekommt man sofort die Meldung "Bezeicher erwartet" um die Ohren gehauen.
Was eigentlich hinreichend genau ist, ein Pointer weist immer auf einen beliebigen Typen hin.
Die sog. Typisierung ist eigentlich nur ein Schmankerl um ein paar Fehler zu vermeiden.
Für ein funktionierendes Programm ist so etwas durchaus ausreichend:
Delphi-Quellcode:
Type
TListenelement = record
Daten : irgendwas;
next : pointer;
last : pointer;
end;
var
ErstesElement,
LetztesElement,
AktuellesElement : pointer;
aber so ist es etwas einfacher:
Delphi-Quellcode:
Type
PListenelement = ^TListenelement;
TListenelement = record
Daten : irgendwas;
next : PListenelement;
last : PListenelement;
end;
var
ErstesElement,
LetztesElement,
AktuellesElement : PListenelement;
Edith:
und dereferenzieren kann ich immer noch mit allen möglichen Typen!
Gruß
K-H