Riferimento agli array Perl

Riferimento Agli Array Perl



Quando viene creata la variabile di riferimento per qualsiasi variabile, e se viene modificato il valore della variabile principale, contemporaneamente viene modificato il valore della variabile di riferimento. Perché sia ​​la variabile “principale” che la variabile “di riferimento” condividono la stessa posizione nella memoria. La variabile di riferimento sia della variabile scalare che della variabile vettoriale può essere definita in Perl. L'array è un tipo di variabile vettoriale in Perl. I metodi per creare e utilizzare la variabile di riferimento dell'array Perl sono mostrati in questo tutorial.

Diversi usi dell'array di riferimento

Gli usi delle variabili di riferimento dell'array per scopi diversi sono mostrati di seguito:

Variabile di matrice Variabile di riferimento dell'array Scopo
@vettore @{ $ref_array } Viene utilizzato per fare riferimento a tutti i valori dell'array.
scalare @array scalare @ref_array Viene utilizzato per contare il numero totale di array.
$#array $#ref_array Viene utilizzato per definire l'indice più grande.
$array[indice] $tef_array->[indice] È usato per riferirsi al particolare elemento dell'array.

Usi dei riferimenti agli array Perl

In questa parte del tutorial vengono mostrati diversi usi delle variabili di riferimento dell'array Perl.







Esempio 1: creare un riferimento di array

Crea un file Perl con il seguente script che dichiara un array di quattro valori stringa e la variabile di riferimento di questo array. La variabile di riferimento memorizza la posizione di memoria dell'array principale ed entrambe le variabili condividono la stessa posizione. Il contenuto della variabile di riferimento e dell'array principale viene stampato successivamente.



#!/usr/bin/perl

usare rigoroso ;
utilizzo avvertimenti ;
utilizzare 5.34.0 ;
utilizzare Dati::Dumper ;

#Dichiara un array di stringhe
Mio @ ritardatario = ( 'Perl' , 'Giava' , 'Colpo' , 'Pitone' ) ;

#Crea un riferimento alla variabile array
il mio $ref_array = \ @ ritardatario ;

Dire 'Il contenuto del riferimento all'array è $ref_array' ;

Dire 'I valori dell'array che utilizzano la variabile Dumber sono: ' ;
#Stampa la variabile di riferimento con la variabile Dumper
stampa Dumper $ref_array ;

Produzione:



Durante l'esecuzione dello script viene visualizzato il seguente output:





  p1

Esempio 2: aggiornare l'array dopo aver creato il riferimento

Crea un file Perl con il seguente script che mostra che se qualsiasi elemento dell'array principale viene modificato, contemporaneamente viene modificato il valore corrispondente della variabile dell'array di riferimento. Tutti i valori dell'array principale vengono stampati prima di aggiornare qualsiasi valore dell'array e tutti i valori dell'array di riferimento vengono stampati dopo aver aggiornato il secondo elemento utilizzando la variabile “dump”.



#!/usr/bin/perl

usare rigoroso ;
utilizzo avvertimenti ;
utilizzare 5.34.0 ;
utilizzare Dati::Dumper ;

#Dichiara un array di stringhe
Mio @ ritardatario = ( 'Perl' , 'Giava' , 'Colpo' , 'Pitone' ) ;

Dire 'I valori dell'array principale sono: ' ;
#Stampa la variabile di riferimento con la variabile Dumper
stampa Autocarro \ @ ritardatario ;

#Crea un riferimento alla variabile array
il mio $ref_array = \ @ ritardatario ;

#Aggiorna il 2° elemento dell'array
$strarr [ 1 ] = 'C++' ;

Dire 'I valori dell'array di riferimento (dopo l'aggiornamento dell'array principale) sono: ' ;
#Stampa la variabile di riferimento con la variabile Dumper
stampa Dumper $ref_array ;

Produzione:

Il seguente output viene visualizzato dopo l'esecuzione dello script. Secondo l'output, il secondo elemento viene modificato in 'C++' nell'array di riferimento perché il secondo elemento dell'array principale viene aggiornato dal valore 'C++':

  p2

Esempio 3: passare il riferimento all'array in una subroutine

Crea un file Perl con il seguente script in cui la variabile di riferimento dell'array viene inviata come argomento della subroutine. Il valore del terzo indice dell'array viene aggiornato utilizzando la variabile di riferimento all'interno della subroutine. I valori dell'array principale vengono stampati prima e dopo l'aggiornamento del terzo indice della variabile di riferimento utilizzando la variabile “dump”.

#!/usr/bin/perl

usare rigoroso ;
utilizzo avvertimenti ;
utilizzare 5.34.0 ;
utilizzare Dati::Dumper ;

#Dichiara un array di numeri
Mio @ numeri = ( 67 , 3.4 , 90 , 12 , 39 ) ;

Dire 'I valori dell'array principale prima dell'aggiornamento:' ;
stampa Autocarro \ @ numeri ;

#Passa l'array come riferimento nella subroutine
read_array ( \ @ numeri ) ;
#Dichiara la subroutine per modificare il valore dell'array
sottoarray_lettura
{
#Definire la variabile di riferimento dell'array
il mio $arr_ref = $_ [ 0 ] ;
#Aggiorna il terzo elemento dell'array
$arr_ref- > [ 2 ] = 99 ;
}
Dire 'I valori dell'array principale dopo l'aggiornamento:' ;
stampa Autocarro \ @ numeri ;

Produzione:

Il seguente output viene visualizzato dopo l'esecuzione dello script. Il terzo elemento dell'array era 90 e questo valore viene modificato in 99 utilizzando la variabile di riferimento dell'array. Anche il terzo elemento dell'array originale viene aggiornato di 99 perché entrambe le variabili condividono la stessa posizione:

  p3

Conclusione

I metodi per accedere o aggiornare i valori dell'array creando la variabile di riferimento dell'array sono mostrati in questo tutorial. Gli utenti Perl avranno un concetto chiaro sull'utilizzo delle variabili di riferimento dell'array Perl dopo aver letto questo tutorial.