PowerShellの型変換を使ったValueの受け入れ例2013-04-09PowerShellの型変換を使ったValueの受け入れ例PowerShellPowerShellの型変換は結構強力?というか、動作を理解していないと???が浮かぶかもしれません。そのいい例が、scriptblock利用時にintに受け入れられる動きです。簡単なテストFunctionシンプルなテストを書きます。見ての通り、$numberはValueFromPipelineです。Pipeからの値を受け入れます。$number2は、ValueFromPipelineByPropertyNmaeです。よって、PipeからのPropertyNameでのマッチを受け入れます。単純にこの状態で、テストしましょう。連番を渡して、-Number2には常に2を指定します。2結果は予想されたであろうとおりです。2-Numnber2にScriptBlockを指定すると?-Number2は、[int]と規定しました。他の方ではキャストされずに型変換エラーが起きそうです。ScriptBlockを与えてみましょう。2}結果は、型変換が暗黙で行われて、ScriptBlockの実行結果が-Number2に渡されています。20どうでしょうか?奇妙でしょうか。そこかしこでPowerShellは動的に型変換を行います。型をきっちり扱いたいので困ることもあるのですが、「左辺の型に右辺の型が暗黙の型変換される」と覚えておくと分かり易いですね。ここが変だよPowerShellと思うであろう例でした。キーワー...2013-04-07Powershellで文字長を揃えてみたりする小ネタです。(9)トップへ戻るスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。