Autor Beitrag
horsti
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 44



BeitragVerfasst: Fr 24.03.06 16:43 
hi,

ich habe eine rekursion die ein problem löst, doch manchmal funktioniert es und manchmal kommt ein stack overflow. das debuggen gestaltet sich sehr schwierig, weil es super viele aufrufe sind.
mich würde die aktelle rekursionstiefe interessieren. kann man sich die irgendwo anzeigen lassen?

ich habe bereits das fenster "aufruf-stack" gefunden, aber ist das was ich suche?
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8548
Erhaltene Danke: 477

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Fr 24.03.06 16:47 
Für Testzwecke würde ich sowas machen:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
var tiefe: integer;

procdure myRec;
begin 
  Label1.Caption := IntTostr(tiefe);
  inc(tiefe);
  myRec; // Rekursiver Aufruf
  dec(tiefe);
  Label1.Caption := IntTostr(tiefe);
end;

_________________
We are, we were and will not be.
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: Fr 24.03.06 16:47 
user profile iconhorsti hat folgendes geschrieben:
ich habe bereits das fenster "aufruf-stack" gefunden, aber ist das was ich suche?


Dort kannst du ja sehen, wie oft sich die Funktion selbst aufgerufen hat. Anonsten kannst du ja auch eine Variable um 1 hochzählen lassen, wenn die Funktion aufgerufen wird ;)

AXMD