Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Frage zu Function und Rekursion


Jerk - Sa 02.08.08 21:47
Titel: Frage zu Function und Rekursion
Ich habe eine Function die eine Procedure aufruft. Diese Procedure ruft sich rekursiv auf bis Punkt X erreicht ist.

Kann man die Function warten lassen nach dem Aufruf der Procedure bis die Rekursion abgeschlossen ist um dann das Ergebnis übergeben zu können?


Christian S. - Sa 02.08.08 21:49

Wenn die Prozedur nicht in einem anderen Thread läuft, wartet die doch sowieso :gruebel:


Tilman - Sa 02.08.08 21:49

Normalerweise sollte die Funktion das ohnehin tun! Wenn sie es nicht tut benutzt du Threads oder rufst irgendsone API-Prozedur auf oder so.

(Da war wieder einer schneller)


Jerk - Sa 02.08.08 21:54

Also nach dem Motto:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
Function blablubb : Boolean;
begin
 Rekursion;
 result := True;
end;

Procedure Rekursion;
begin
 if irgendwas then Rekursion;
end;


edit Ok habs verstanden...
Da die ganze Sache Unitübergreifend war hat sich das erübrigt :)


Tilman - Sa 02.08.08 21:56

Genau. Die Result-Zeile wird dann erst nach der Rekursion ausgeführt. Kannst du dir auch anschauen wenn du einen Haltepunkt setzt und das Programm im Einzelschritt (F7) anschaust.