Come ottenere l'ultimo argomento come un array in Perl

March 9

Il linguaggio di programmazione Perl supporta un certo numero di strutture di dati tra cui semplice variabile scalare e gli array. Un array indicato in Perl con il simbolo "@" è un insieme di variabili scalari. In uno script Perl è spesso necessario passare alcuni dati a una subroutine. Mentre Perl consente di passare direttamente due o più argomenti che inevitabilmente ottiene spazzatura invece di dati di matrice se uno di questi argomenti è un array. Per ovviare a questo problema è necessario utilizzare il meccanismo di Perl di passare gli argomenti per riferimento.

istruzione

1 Utilizzare una barra rovesciata () per passare la matrice per riferimento. Per esempio,

calcolare (\ $ valore, \ @ dati);

questo comando passa la matrice "@data" per la subroutine "calcolare" di riferimento.

2 Utilizzare una variabile Perl (non un array) per ottenere la matrice nella subroutine:

la mia ($ value, $ data) = @ _;

la variabile "$ data" è un riferimento alla matrice "@data."

3 Lavorare con la matrice nella subroutine utilizzando Perl dereferencing; per esempio per stampare ogni elemento dell'array utilizzare il ciclo "foreach:"

foreach $ elemento (@ $ data) {

print $ elemento;

}

Il simbolo "@" davanti al $ dati variabili indica che la matrice.