PowerShell ExpandoObject を関数へ参照渡しするサンプル

PowerShellカテゴリを表すパンダのイラスト PowerShell

[ref]が必要かと思ったら、そのまま渡すのが正解だった。

[system.Dynamic.ExpandoObject]$MyClassA = [system.Dynamic.ExpandoObject]::new()

PowerShellでは、上記定義すると、$MyClassAに格納されているのは、 [system.Dynamic.ExpandoObject]で生成するオブジェクトのポインタなのだろう。

それを引数に渡すから、[ref]を指定しなくてもいいのだろうと解釈しました。

実行結果

Init MyClassA  MyValue
MyFunc Exec No=1  2024/01/16/ 11:50:42
MyFuncForValue Exec No=2  2024/01/16/ 11:50:42
Init MyClassB MyValue
MyFunc Exec No=3  2024/01/16/ 11:50:42
MyFuncForValue Exec No=4  2024/01/16/ 11:50:42

文書情報

記事タイトル
PowerShell ExpandoObject を関数へ参照渡しするサンプル
作成日
更新日
Source URL
https://papanda925.com/?p=2640

ライセンス: 本記事のうち、当サイトが権利を有する本文・自作図表は、特記なき限り CC BY 4.0 で利用できます。生成AIを活用して作成・編集した内容を含みます。コードについて、別途ライセンス表示またはリンク先GitHubリポジトリのライセンスがある場合は、その条件を優先します。引用・第三者資料・画像・商標等は本ライセンスの対象外です。 利用ポリシー

タイトルとURLをコピーしました