A linguagem de programação Perl suporta um número de estruturas de dados , incluindo simples variável escalar e matrizes. Uma matriz denotada em Perl com o símbolo "@" é um conjunto de variáveis escalares . Em um script Perl muitas vezes você precisa para passar alguns dados para uma sub-rotina . Enquanto Perl permite que você passe diretamente dois ou mais argumentos que você inevitavelmente obter lixo , em vez de dados da matriz se um desses argumentos é uma matriz. Para contornar este problema, você tem que usar o mecanismo Perl de passagem de argumentos por referência. Instruções
1
Use uma barra invertida ( \\) para passar a matriz por referência. Por exemplo,
calcular (\\ R $ \\ @ data);
este comando passa a matriz "@ data" para a sub-rotina " calcular " por referência
. 2
Use uma variável Perl (e não um array) para obter a matriz na sub-rotina :
my ($ valor , $ dados ) = @ _ ;
a variável " $ dados "é uma referência para a matriz " @ data "
3
Trabalhar com a matriz na sub-rotina usando Perl dereferencing ; por exemplo, para imprimir cada elemento da matriz usar o laço". foreach : "
foreach $ element ( @ $ dados ) { print $
elemento;
}
o símbolo " @ " na frente da variável $ dados indicam que esta é a matriz.