about_Ref
Se aplica a: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0
TEMA
about_Ref
DESCRIPCIÓN BREVE
Describe cómo crear y usar un tipo de variable de referencia.
DESCRIPCIÓN LARGA
Puede usar el tipo de variable de referencia para permitir que un método cambie el valor de una variable que se le pasa.
Cuando el tipo [ref] está asociado a un objeto, devuelve una referencia a ese objeto. Si la referencia se usa con un método, el método puede hacer referencia al objeto que se le pasó. Si se cambia el objeto dentro del método, el cambio aparece como un cambio en el valor de la variable cuando el control vuelve el método de llamada.
Para usar las referencias, el parámetro debe ser una variable de referencia. En caso de que no lo sea, se produce una excepción InvalidArgument.
Los parámetros que se usan en las invocaciones de método deben coincidir con el tipo que requieren los métodos.
Ejemplos:
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
La variable debe ser una variable de referencia.
PS C:\ps-test> double $number
double : Reference type is expected in argument.
At line:1 char:7
+ double <<<< $number
VEA TAMBIÉN
about_Variables
about_Environment_Variables
about_Functions
about_Script_Blocks