Die Interative Lösung hat noch andere Vorteile
(gut, der Nachteil, daß Interativ meißt schieriger/umständlicher/unverständlicher zu implementieren ist, sei mal dahingestellt)
Vorteil, da man den Stack selber verwaltet, kann man auch mal ganz leicht aus der Funktion rausspringen und diese später erneut an selber Stelle weiter abarbeiten.
Im Fall von FindAllFiles wäre z.B. sowas möglich:
Delphi-Quellcode:
Suche := TSucheAlleDateien.Create('c:\', '*.*');
while Suche.NochWasDaFragezeichen and not SollAbgebrochenWerdenFragezeichen do
WriteLn(Find.WasDennFragezeichen);
Suche.Free;
Wobei man hier die nächste Datei erst in NochWasDaFragezeichen suchen könnte.
PS:
http://www.delphipraxis.net/142669-f...iterative.html