Frage

Gibt es einen Grund, einen skalaren Komma-Operator zu verwenden, irgendwo anders als in einer for Schleife?

War es hilfreich?

Lösung

Da die Perl Skalar Komma ein "Port" des C-Komma-Operator ist, diese Kommentare sind wahrscheinlich apropos:

  

Von Zeit zu Zeit findet man sich in   eine Situation, in der C a erwartet   einziger Ausdruck, aber Sie haben zwei   Dinge, die Sie sagen wollen. Am meisten   gemeinsam (und in der Tat die einzige gemeinsame)   Beispiel hierfür ist in einer Schleife for, insbesondere   die erste und dritte kontrollierende   Ausdrücke. Was passiert, wenn (zum Beispiel) Sie   will eine Schleife haben, in denen zählen i   up von 0 zugleich 10 dass   j zählt von 10 bis 0?

Also, Ihr Instinkt, dass es in erster Linie nützlich ist in for Schleifen ist gut, denke ich.

Andere Tipps

ich es gelegentlich verwenden in der bedingten (manchmal fälschlicherweise als „ternären“) Operator, wenn der Code einfacher ist, als zu lesen, es heraus in einen echten Bruch if / else:

my $blah = condition() ? do_this(), do_that() : do_the_other_thing();

Es ist auch in einem gewissen Ausdruck verwendet werden könnte, wo das letzte Ergebnis wichtig ist, wie in einem grep Ausdruck, aber in diesem Fall ist es genau das gleiche, als ob ein Semikolon verwendet wurde:

my @results = grep { setup(), condition() } @list;
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top