TÓPICO
about_Ref
DESCRIÇÃO RESUMIDA
Descreve como criar e usar um tipo de variável de referência.
DESCRIÇÃO LONGA
Você pode usar o tipo de variável de referência para permitir que
um método altere o valor de uma variável transmitido para ele.
Quando o tipo [ref] é associado a um objeto, ele retorna uma referência
a esse objeto. Se a referência for usada com um método, ele poderá
se referir ao objeto transmitido para ele. Se o objeto tiver sido
alterado dentro do método, a alteração aparecerá como uma alteração
no valor da variável quando o controle retornar ao método de chamada.
Para usar as referências, o parâmetro deve ser uma variável de
referência. Caso contrário, uma exceção InvalidArgument será lançada.
Os parâmetros usados em chamadas de método devem ter o mesmo tipo
exigido pelos métodos.
Exemplos:
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
A variável deve ser uma variável de referência.
PS C:\ps-test> double $number
double : Tipo de referência esperado em um argumento.
At line:1 char:7
+ double <<<< $number
CONSULTE TAMBÉM
about_Variables
about_Environment_Variables
about_Functions
about_Script_Blocks