neo2k
05-02-2007, 10:46
Hallo,
ich habe in Perl eine Funktion (sub) geschrieben, weilche ein Array zurückgibt. Nun möchte ich dem Aufrufer mitteilen, ob in der sub ein Fehler aufgetreten ist. Wie macht man das ?
1) Ich habe es mit return undef versucht (Im Fehlerfall). Aber das klappt nicht.
sub a() { return undef; }
if (!defined(a()) { echo "Fehler"; }
Fehler wird nie ausgegeben.
Ausserdem kann ich bei dieser Version dem Aufrufer keinen Fehlerstring mitgeben.
2) Kann man $! und $? selbst setzen ?
3) croak und carp setzen $! und $? auch nicht, sondern geben nur Fehler aus oder brechen ab.
Kann mir jemand einen Tip geben?
Vielen Dank
Torsten
ich habe in Perl eine Funktion (sub) geschrieben, weilche ein Array zurückgibt. Nun möchte ich dem Aufrufer mitteilen, ob in der sub ein Fehler aufgetreten ist. Wie macht man das ?
1) Ich habe es mit return undef versucht (Im Fehlerfall). Aber das klappt nicht.
sub a() { return undef; }
if (!defined(a()) { echo "Fehler"; }
Fehler wird nie ausgegeben.
Ausserdem kann ich bei dieser Version dem Aufrufer keinen Fehlerstring mitgeben.
2) Kann man $! und $? selbst setzen ?
3) croak und carp setzen $! und $? auch nicht, sondern geben nur Fehler aus oder brechen ab.
Kann mir jemand einen Tip geben?
Vielen Dank
Torsten