在下面的 Powershell 语句中,为什么我需要逗号来实例化 Powershell Object[] 中的 .Net 数组列表或堆栈?
$list = "A","B","C"
$stack = New-Object System.Collections.Stack(,$list)
我为什么需要它,逗号是什么意思?
最佳答案
逗号 是 PowerShell 中的数组运算符。
问题是 PowerShell 将您的数组解包到重载参数中。添加逗号将其保留为数组。
没有逗号你会得到这个错误:
New-Object : Cannot find an overload for "Stack" and the argument count: "3".
摘自Windows PowerShell 实战(第二版): 逗号运算符始终将其参数值包装在一个新的单元素数组中。
关于.net - Powershell 对象 [] 到 .Net 集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9833160/