我想在PowerShell中创建一个对象,其中一个私有成员是一个列表或不同对象的数组。此请求有两个重要功能。
私有成员列表或数组必须能够动态增长(这将如何在语法上有效?)
解决方案必须向后兼容PowerShell 2.0 。这意味着我无法使用"类"创建自定义类。关键字。
有没有办法在PowerShell中完成?
答案 0 :(得分:1)
你在找这样的东西(在v2中工作):
$x = New-Object psobject
$arr = new-object system.collections.arraylist
$arr.add("test")
$arr.add("test3")
$arr.add(@{"test4"="another1"})
$x | add-member -MemberType NoteProperty -Name arr -Value $arr
$x.arr.add("test5")
write-output $x.arr
默认情况下,数组在powershell中是多态的,因此您可以在数组中存储任何类型并将其传递给对象
中无法使用私人会员答案 1 :(得分:0)
就这样做:
#declaration array and variables differents types
$array=@()
$varstring='i am as tring'
$varint=0
$varobject=New-Object -TypeName "pscustomobject" @{val1="12"; val2="test"}
#add elements into array
$array+=$varstring
$array+=$varint
$array+=$varobject
#print array
$array