Ambito automático

Como sabemos, ciertas variables (como $1, $& ...) reciben automáticamente un valor con cada operación de ``matching''.

Considere el siguiente código:

if (m/(...)/) {
  &do_something();
  print "the matched variable was $1.\n";
}
Puesto que $1 es automáticamente declarada local a la entrada de cada bloque, no importa lo que se haya hecho en la función &do_something(), el valor de $1 en la sentencia print es el correspondiente al ``matching'' realizado en el if.

Casiano Rodríguez León
Licencia de Creative Commons
Principios de Programación Imperativa, Funcional y Orientada a Objetos Una Introducción en Perl/Una Introducción a Perl
por Casiano Rodríguez León is licensed under a Creative Commons Reconocimiento 3.0 Unported License.

Permissions beyond the scope of this license may be available at http://campusvirtual.ull.es/ocw/course/view.php?id=43.
2012-06-19