about_ref
主题
about_Ref
简短说明
介绍如何创建和使用引用变量类型。
详细说明
可以使用引用变量类型来允许方法更改传递给它的变量的值。
当 [ref] 类型与对象关联时,它将返回对该对象的引用。如果引用与方法一起使用,则方法可以引用传
递给它的对象。如果对象在方法中发生更改,则当控制权返回给发起调用的方法时,所做更改将反映在变
量值中。
若要使用引用,则参数必须是引用变量。如果参数不是引用变量,则引发 InvalidArgument 异常。
在方法调用中使用的参数必须与方法需要的类型匹配。
示例:
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
变量必须是引用变量。
PS C:\ps-test> double $number
double : 参数中应该有 Reference 类型。
位于 line:1 字符:7
+ double <<<< $number
另请参阅
about_Variables
about_Environment_Variables
about_Functions
about_Script_Blocks