THEMA
about_Ref
KURZBESCHREIBUNG
Beschreibt das Erstellen und Verwenden eines Verweisvariablentyps.
DETAILBESCHREIBUNG
Mit dem Verweisvariablentyp können Sie den Wert einer Variablen
mit einer Methode ändern, die an die Methode übergeben wurde.
Wenn der Typ "[ref]" mit einem Objekt verknüpft ist, wird ein
Verweis auf dieses Objekt zurückgegeben. Wenn der Verweis mit
einer Methode verwendet wird, kann mit der Methode auf das an sie
übergebene Objekt verwiesen werden. Wenn das Objekt in der
Methode geändert wird, werden die Änderungen bei Rückgabe des
Steuerelements an die aufrufende Methode als Änderung im Wert der
Variablen angezeigt.
Verweise sind nur mit Parametern möglich, die Verweisvariablen
darstellen. Andernfalls wird eine InvalidArgument-Ausnahme ausgelöst.
Die Parameter in den Methodenaufrufen müssen mit dem
erforderlichen Typ für die Methoden übereinstimmen.
Beispiele:
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
Die Variable muss eine Verweisvariable sein.
PS C:\ps-test> double $number
double : Im Argument wird ein Verweistyp erwartet.
Bei Zeile:1 Zeichen:7
+ double <<<< $number
SIEHE AUCH
about_Variables
about_Environment_Variables
about_Functions
about_Script_Blocks