Thread "Exception handling" Frage (10 answers)
Opened by Kuerbis at 2012-06-17 08:41

rosti
 2012-06-17 11:01
#159076 #159076
User since
2011-03-19
3305 Artikel
BenutzerIn
[Homepage]
user image
2012-06-17T08:47:55 Kuerbis
Wie würde man auf englisch schreiben, dass eine Funktion croakt?


croak means die ;)

Code (perl): (dl )
1
2
croak "The value is not a number";
die "The value is not a number";


Du gibst croak/die eine eigene Fehlermeldung mit, welche den Fehler beschreibt. Das Ergebnis croak/die ist dasselbe: Es wird eine Exception geworfen. Der Unterschied ist der, dass bei der Ausgabe $@ unterschiedliche Zeilennummern ausgegeben werden:

die(): Gibt die at Zeilennummer aus, wo die() stattfindet
croak(): gibt die at Zeilennummer aus, wo die Methode aufgerufen wurde (Backtrace)

Das ist der Sinn von Carp: Der Backtrace. Mehr dazu gibts mit Carp::confess;

--Rosti

PS/Edit: http://rolfrost.de/map/perlbase/carp_warn.html
Last edited: 2012-06-17 11:20:48 +0200 (CEST)

View full thread "Exception handling" Frage