Hallo liebe
DP!
Ich sitz gerade wieder vor einem Problem mit meinem Stack. Ich möchte das letzte Element eines Stapel löschen... Ich habe mir dafür eine Variable Hilf angelegt, die auf den Anfang des Stapels zeigt, damit ich den nicht verliere. Ich möchte den Stapel mit einer Schleife durchlaufen und das letzte Element dann disposen. Das Blöde hier dran ist nur, dass meine While-Schleife einfach nie zu Ende geht. Sie rattert pausenlos durch, was eine CPU-Auslastung von 100 % zur Folge hat.
Delphi-Quellcode:
procedure letztesloeschen(AStapel:PStapel);
var
Hilf,temp:PStapel;
begin
Hilf:= AStapel;
While AStapel <> nil do temp:= AStapel^.next;
Dispose(temp);
AStapel:= Hilf;
end;
Die Prozedur ist in einer anderen
Unit nur für Stapelprozeduren. Der Stapel wird durch den Parameter übergeben. Der Stapel wird beim Formcreate auf nil gesetzt.
Ich hoffe ihr könnt mir helfen