Thread Sinn Klammer bei my ($f) = shift
(16 answers)
Opened by Gast200 at 2013-11-05 23:26
Der Punkt ist, dass die rechte Seite im Listenkontext ausgewertet wird. Von dieser Liste wird dann das erste Element zugewiesen.
Ich brauche das schon hin und wieder. Ein paar Beispiele fallen mir spontan ein: Code (perl): (dl
)
1 2 3 4 5 6 7 # Beispiel 1. my ($x) = /(regex)/; # (Ohne Listenkontext würde der Match etwas ganz anderes zurückgeben) # Beispiel 2. # in meiner perlscriptsammlung gefunden, zum parsen der ausgabe von mplayer -identify: my ($width) = map { /^ID_VIDEO_WIDTH=(\d+)$/ } @identify; In beiden Fällen geht die Fehlerbehandlung sehr gut. Denn wenn nichts gefunden wird, ist die Variable undef. Bei "= shift" macht die Klammer natürlich keinen Unterschied. Es liegt vermutlich am Coding Style des Autors. Last edited: 2013-11-07 15:46:40 +0100 (CET) Lieblingsmodule: IPC::System::Simple, Path::Class
|