¿Hay alguna razón para utilizar un operador de coma escalar en otro lugar que no sea en un bucle for
?¿Cuándo es útil el operador de coma escalar de Perl?
Respuesta
Desde el escalar coma Perl es un "puerto" del operador C coma, these comments son, probablemente, a propósito:
De vez en cuando, usted se encuentra en una situación en la cual C espera un sola expresión, pero tiene dos cosas que quiere decir. El ejemplo más común (y, de hecho, el único común) está en un bucle
for
, específicamente la primera y tercera expresiones que controlan . ¿Qué pasa si (por ejemplo) que quieren tener un bucle en el quei
conteos desde0
a10
, al mismo tiempo quej
está contando hacia abajo desde10
a0
?
Por lo tanto, su instinto de que es principalmente útil en los bucles for
es bueno, creo.
vez en cuando lo uso en condicional (a veces erróneamente llamado "ternario") del operador, si el código es más fácil de leer que romperlo a cabo en un verdadero if/else:
my $blah = condition() ? do_this(), do_that() : do_the_other_thing();
También podría ser utilizado en alguna expresión en el que el último resultado es importante, como en una expresión grep
, pero en este caso es lo mismo que si se utiliza un punto y coma:
my @results = grep { setup(), condition() } @list;
¿No es el operador "?:" Ternario? :) –
@eugene: es * un * operador ternario, pero no es correcto llamarlo * el * operador ternario. – Ether
- 1. periodo Perl vs operador coma
- 2. ¿Cuándo es útil File.join?
- 3. ¿Cuándo es útil __proto__?
- 4. ¿Cuándo es útil un ConcurrentSkipListSet?
- 5. ¿Cuándo el operador `==` no es equivalente al operador `is`? (Python)
- 6. Android - caché de dibujo - ¿cuándo es útil?
- 7. ¿Cuándo es útil la salida de repr?
- 8. operador de coma C
- 9. ¿Es útil el modo de atenuación de Perl?
- 10. ¿Cuándo el @ se vuelve útil?
- 11. ¿Es eficiente el "operador secreto" de Perl Goatse?
- 12. ¿Qué tan útil es C#? ¿operador?
- 13. ¿Cuándo es útil un filtro Bloom?
- 14. ¿Qué hace el operador de coma?
- 15. ¿Cuándo la evaluación perezosa no es útil?
- 16. Cuando todo el operador de coma no actúa como un operador de coma?
- 17. Abusar del operador de coma
- 18. Cuándo utilizar el operador "^"
- 19. Reconociendo cuándo usar el operador de módulo
- 20. ¿Cuándo usamos el operador "|| =" en Rails? ¿Cuál es su significado?
- 21. Java: ¿Cuándo es útil un bloque de inicialización estático?
- 22. Operador de coma en un condicional
- 23. ¿Cuándo sobrecarga el operador nuevo?
- 24. Formas de aplanar una matriz Perl en el contexto escalar
- 25. ¿Qué es el patrón de Objeto humilde y cuándo es útil?
- 26. Cuándo utilizar el operador de asignación sobrecargado?
- 27. ¿Cuándo es útil una llamada a un método parametrizado?
- 28. ¿Cuándo es útil la diferencia entre quotRem y divMod?
- 29. ¿Puede alguien explicarme cuándo es útil usar MapMaker o WeakHashMaps?
- 30. ¿Cuándo Perl autoinicializa las variables?
campo de Código. . . – mob
+1 mobrule; él dijo "cualquier razón". –