簡體   English   中英

創建一個包含可在 PowerShell 中動態增長的不同對象數組的對象

[英]Create an object containing an array of different objects that can grow dynamically in PowerShell

我想在 PowerShell 中創建一個對象,其私有成員之一是不同對象的列表或數組。 此請求有兩個重要特征。

  1. 私有成員列表或數組必須能夠動態增長(這在語法上是如何工作的?)

  2. 該解決方案必須向后兼容 PowerShell 2.0 這意味着我無法使用“class”關鍵字創建自定義類。

有沒有辦法在 PowerShell 中做到這一點?

你在尋找這樣的東西嗎(在 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 中的數組是多態的,因此您可以在數組中存儲任何類型並將其傳遞給對象

私有成員在 v2 中是不可能的( PowerShell - 如何添加私有成員?

去做就對了:

#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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM