PowerShell の参照渡しが機能しない 質問する

PowerShell の参照渡しが機能しない 質問する

PowerShell で簡単な swap 関数を作成しようとしていますが、参照渡しがうまく機能しないようです。

function swap ([ref]$object1, [ref]$object2){
  $tmp = $object1.value
  $object1.value = $object2.value
  $object2.value = $tmp
}

$a = 1
$b = 2
$a, $b
swap ([ref]$a) ,([ref]$b)
$a, $b

これは動作するはずですが、そうではありません...

Output:
    1
    2
    1
    2

何を間違えたのでしょうか?

ベストアンサー1

次のように呼び出します:

swap ([ref]$a) ([ref]$b)

使用上の誤り,については、よくある落とし穴PowerShellについてはStack Overflowで

おすすめ記事