ARGOMENTO
about_Ref
DESCRIZIONE BREVE
Descrive come creare e utilizzare un tipo variabile di riferimento.
DESCRIZIONE DETTAGLIATA
È possibile utilizzare il tipo variabile di riferimento per
consentire a un metodo la modifica del valore di una variabile
che gli è stata passata.
Quando il tipo [ref] viene associato a un oggetto, restituisce un
riferimento a tale oggetto. Se il riferimento viene utilizzato con un
metodo, questo può fare riferimento a un oggetto che gli è stato
passato. Se l'oggetto viene modificato all'interno del metodo,
la modifica appare come una modifica del valore della variabile
quando il controllo viene restituito al metodo chiamante.
Per utilizzare il riferimento, è necessario che il parametro sia una
variabile di riferimento. In caso contrario, verrà generata un'eccezione
InvalidArgument.
I parametri utilizzati nelle chiamate di metodi devono
corrispondere al tipo richiesto dai metodi.
Esempi:
PS> function swap([ref]$a,[ref]$b)
>> {
>> $a.value,$b.value = $b.value,$a.value
>> }
PS> $a = 1
PS> $b = 10
PS> $a,$b
1
10
PS> swap ([ref]$a) ([ref]$b)
PS> $a,$b
10
1
PS C:\ps-test> function double
>> {
>> param ([ref]$x) $x.value = $x.value * 2
>> }
PS C:> $number = 8
PS C:> $number
8
PS C> double ([ref]$number)
PS C> $number
16
The variable must be a reference variable.
PS C:\ps-test> double $number
double : Reference type is expected in argument.
At line:1 char:7
+ double <<<< $number
VEDERE ANCHE
about_Variables
about_Environment_Variables
about_Functions
about_Script_Blocks