Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Variabili locali

In ogni momento si possono dichiarare le variabili locali, così una sub può lavorare su queste variabili senza interferire su altre usate da altre sub.
In ogni momento si possono dichiarare le variabili locali, così una sub può lavorare su queste variabili senza interferire su altre usate da altre sub.
Link copiato negli appunti

In ogni momento si possono dichiarare le variabili locali, così una sub può lavorare su queste variabili senza interferire su altre usate da altre sub.
Il modo per farlo è questo:

local($variable, $anothervar, @even_an_array);

Questo crea queste nuove variabili nel momento dell'esecuzione, salvando i precedenti valori delle variabili con lo stesso nome (se esistono); in seguito, alla fine del blocco {} in cui erano incluse, queste variabili locali vengono distrutte, ed il loro valore iniziale viene ripristinato.
Le variabili locali possono essere inizializzate anche come

local($variable, $anothervar)=(value, anothervalue);

In particolare, è molto comune per le sub iniziare definendo le variabili locali per dare dei nomi agli argomenti che gli sono stati passati:

sub addhelp {
A questa sub sono passati 2 argomenti, il nome di un comando ed un testo di aiuto

local ($cmd, $txt) = @_;
$cmd =~ tr/A-Z/a-z/;

In questo caso A diventa a, B diventa b ecc., così il comando è reso tutto con lettere minuscole

foreach (split(/n+/, $txt) {
next unless $_;
skippa le linee vuote

push (@help, $_);
}
}

A questo punto le variabili $cmd e $txt scompaiono, così se la sub addhelp avesse avuto anch'essa una variabile chiamata $cmd, il suo valore originale sarebbe ripristinato

Ti consigliamo anche