El lenguaje de programación Perl es compatible con una serie de estructuras de datos como simples variables escalares y matrices. Un conjunto denotado en Perl con el símbolo " @" es un conjunto de variables escalares. En un script en Perl que a menudo tiene que pasar algunos datos a una subrutina . Aunque Perl permite pasar directamente a dos o más argumentos que inevitablemente recibe la basura en lugar de datos de la matriz , si uno de los argumentos es una matriz. Para solucionar este problema hay que utilizar el mecanismo de Perl de pasar argumentos por referencia. Instrucciones
1
Utilice una barra invertida ( \\) para pasar la matriz por referencia. Por ejemplo ,
calcular ( \\ $ valor, \\ @ data) ;
este comando pasa a la matriz de datos "@ " a la subrutina "calcular" por referencia
. 2
Utilice una variable de Perl (no es un array) para obtener la matriz en el subprograma:
my ($ valor , $ data ) = @ _ ;
la variable "$ datos " es una referencia a la matriz de datos " @ "
3
Trabaja con la matriz en la subrutina usando desreferenciación Perl , por ejemplo para imprimir cada elemento de la matriz utilizar el bucle " . foreach : "
foreach $ element ( @ $ data) { print $
elemento;
}
el símbolo" @ "delante de la variable $ data indica que se trata de la matriz.