メモの日々


2022年06月03日(金) [長年日記]

[windows] PowerShellで.Netのオブジェクトのインスタンス化

PowerShellでオブジェクトのインスタンスを作る方法は色々あるみたい。

通常はこのページのStatic new() methodにある new() を呼び出す方法が分かりやすいのだと思う。

PS C:\> $a = [Collections.Generic.List[string]]::new()
PS C:\> $a.Add("hello")
PS C:\> $a.Add("world")
PS C:\> $a
hello
world
PS C:\>

なお、以前

PowerShellでは、Add-Typeを使うとDLLを読み込んで.NETのクラスを使えるようになる。

とメモしたが、いくつかのDLLはプリロードされていてAdd-Typeを使わずとも使用できるようで、Syhstem.Collections.Generic.List<T>が含まれる mscorlib.dll はプリロード対象みたい。

また、名前空間の System は省略できるようなので、上記のように書ける。