ARGOMENTO
about_Return
DESCRIZIONE BREVE
Consente di uscire dall'ambito corrente che può essere una
funzione, uno script o un blocco di script.
DESCRIZIONE DETTAGLIATA
La parola chiave Return consente di uscire da una funzione, da
uno script o da un blocco di script. Può essere utilizzata per
uscire da un ambito in un punto specifico, per restituire un
valore o per indicare che è stata raggiunta la fine di un ambito.
Gli utenti che hanno familiarità con linguaggi come C o C# possono
utilizzare la parola chiave Return per rendere esplicita la logica di
uscita da un ambito.
In Windows PowerShell, i risultati di ogni istruzione vengono
restituiti come output, anche senza un'istruzione che contiene la
parola chiave Return. In linguaggi come C o C# vengono restituiti
solo il valore o i valori specificati dalla parola chiave Return.
Sintassi
La sintassi della parola chiave Return è la seguente:
return [<espressione>]
La parola chiave Return può essere riportata da sola oppure
seguita da un valore o espressione, come illustrato di seguito:
return
return $a
return (2 + $a)
Esempi
Nell'esempio seguente viene utilizzata la parola chiave Return
per uscire da una funzione a un punto specifico se viene
soddisfatto un requisito condizionale:
function ScreenPassword($instance)
{
if (!($instance.screensaversecure)) {return $instance.name}
<istruzioni aggiuntive>
}
foreach ($a in @(get-wmiobject win32_desktop)) {
ScreenPassword($a) }
Questo script controlla ogni account utente. La funzione
ScreenPassword restituisce il nome di qualsiasi account utente
che non dispone di uno screen saver protetto da password. Se lo
screen saver è protetto da password, la funzione completa
qualsiasi altra istruzione da eseguire e Windows PowerShell non
restituisce alcun valore.
In Windows PowerShell, è possibile restituire valori anche se non è
utilizzata la parola chiave Return. Vengono restituiti i risultati di ogni
istruzione. Ad esempio, le istruzioni seguenti restituiscono il
valore della variabile $a:
$a
return
L'istruzione seguente restituisce inoltre il valore di $a:
return $a
L'esempio seguente include un'istruzione che ha lo scopo di
informare l'utente che la funzione sta eseguendo un calcolo:
function calculation {
param ($value)
"Attendere. Calcolo in corso..." $value += 73
return $value
}
L'esecuzione di questa funzione e l'assegnazione del risultato a una
variabile hanno l'effetto seguente:
C:\PS> $a = calculation 14
C:\PS>
La stringa "Attendere. Calcolo in corso..." non viene
visualizzata. Viene, viceversa, assegnata alla variabile $a, come
nell'esempio seguente:
C:\PS> $a
Attendere. Calcolo in corso...
87
Sia la stringa informativa che il risultato del calcolo vengono
restituiti dalla funzione e assegnati alla variabile $a.
VEDERE ANCHE
about_Functions
about_Scopes
about_Script_Blocks