当我通过引用一个函数来传递一个哈希表时,我遇到了一个障碍。我怎样才能解决这个问题?
Function AllMyChildren {
param (
[ref]$ReferenceToHash
}
get-childitem @ReferenceToHash.Value
# etc.etc.
}
$MyHash = @{
'path' = '*'
'include' = '*.ps1'
'name' = $null
}
AllMyChildren ([ref]$MyHash)
结果:错误(“Splatted 变量不能用作属性或数组表达式的一部分。将表达式的结果分配给临时变量,然后改为 splat 临时变量。”)。
试图这样做:
$newVariable = $ReferenceToHash.Value
get-childitem @NewVariable
这确实有效,并且根据错误消息似乎是正确的。在这种情况下,它是首选语法吗?