РАЗДЕЛ
    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: Ссылочный тип ожидается в аргументе.
        В строке:1 знак:7
        + double <<<< $number
    
 
СМ. ТАКЖЕ
    about_Variables
    about_Environment_Variables
    about_Functions
    about_Script_Blocks




Содержание