Печальная вещь в PowerShell заключается в том, что функция и скриптовые блоки динамически ограничены.
Но есть еще одна вещь, которая меня удивила: переменные ведут себя как копирование на запись во внутренней области.
[email protected]("g")
function foo()
{
$array += "h"
Write-Host $array
}
& {
$array +="s"
Write-Host $array
}
foo
Write-Host $array
Вывод:
g s
g h
g
Что делает динамическое масштабирование немного менее болезненным. Но как мне избежать копирования-на-записи?