Zitat von
Pellekaeptn:
ZElement = ^TElement;
Hast du das so mit dem Z gelernt? Denn normalerweise wird hier P (wie in Pointer) verwendet.
Zitat:
Delphi-Quellcode:
var
X,Y: ZElement; Letztes: ZElement; Element:TElement;
begin
NEW(X);
NEW(Y);
Element.daten:=eintrag;
Element.Naechstes:=X;
Element.Voriges:=Y;
Spiel das mal in Gedanken durch. Du möchtest ein Element hinzufügen, erstellt dafür aber zwei Einträge? Und was ist mit "Element"? Delphi wird sich den Speicherbereich dafür mit Sicherheit nicht selbst suchen
Zitat:
Außerdem stand bei der Watchlist auch einmal "Variable "Self" inaccessible here due to optimization". Ich hab doch gar keine Variable Self???
Doch die Variable Self hast du. Das ist der "Punkt" zwischen "TKeller" und "Push" (wenn man es so will). Der Compiler übergibt das Objekt (in diesem Fall von der Klasse TKeller) im versteckten Self-Parameter. (Andere Sprachen nennen das "this" (C++/C#/Java) oder "me" (VisualBasic)).