• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Rekursion undProbleme mit Funktionsreferenz

kakalake

New member
Hallo!
Ich habe folgenden Code:

sub getDirContent
{

my ($dir,$func,$depth,$printed) = splice(@_,0,4);

opendir( dirHandle, $dir ) or return 0;
my @dirContent = grep { !/^\.+$/ } readdir( dirHandle );
close( dirHandle );

foreach ( @dirContent )
{
&getDirContent( "$dir\/$_" ) if ( -d "$dir\/$_" );
&$func( $_ );
}

return 1;
}

sub Function()
{
print "$_[0]<br>";
}

So, jedoch bleibt die Funktion stehen, falls man zum ersten Aufruf von func kommt. Wieso??? Kann man in Perl aus einer rekursiven Funktion heraus keine weiteren Funktionen aufrufen?

cu
 
Rekursion

Habe den Fehler schon selbst gefunden. War kein Problem von Perl, sondern ein Problem meiner Unfähigeit. Habe bei dem rekursiven Aufruf vergessen den Funktionszeiger wieder mitzugeben. Konnte also nicht funtzen. Trotzdem vielen Dank!
 
Zurück
Oben