Thread wie genau funktioniert der diamantoperator? (4 answers)
Opened by lichtkind at 2009-11-01 16:02

pq
 2009-11-01 16:20
#127635 #127635
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
ersteres ist im skalaren kontext und liest deshalb nur je eine zeile.
letzteres ist listenkontext und liest deshalb alle zeilen und weist die beiden ersten den beiden variablen vor dem gleichheitszeichen zu.
hat also nur den unterschiedlichen effekt, dass danach der filehandle am ende angekommen ist, in den variablen sollte aber das drinstehen, was auch bei der ersten variante drinsteht.

edit: ach du hast zwei verschiedene filehandles. deshalb wird beim zweiten beispiel in der zweiten variable die zweite zeile des ersten handles landen (falls es mehr als eine zeile gibt)

edit2: um den gleichen effekt zu haben würdest du schreiben:
Code (perl): (dl )
($line->[0], $line->[1]) = (scalar <$DFH>, scalar <$CFH>);

Last edited: 2009-11-01 16:22:36 +0100 (CET)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread wie genau funktioniert der diamantoperator?