は、このような機能を考えてみましょう:
$missed = "{716C1AD7-0DA6-45e6-854E-4B466508EB96}"
function Test($foo = $missed, $bar = $missed)
{
if(!$foo)
{
throw "error"
}
if(!$bar)
{
throw "error"
}
}
私はこの方法
Test -foo $foo -bar $bar
この関数を呼び出すために好きwhouldしかし、$ fooのか$バーが$ nullの場合、例外がスローされます。素朴な解決策は
if($foo -and $bar)
{
Test -foo $foo -bar $bar
}
elseif ($foo)
{
Test -foo $foo
}
elseif ($bar)
{
Test -bar $bar
}
else
{
Test
}
です。このif/elseブロックを1/2行で書き直すにはどうすればよいですか?あなたのように関数を書くことができ
実際に私はTest関数の実装と$ missing変数へのアクセス権がありません。それは単なるイラストであった。私は、この関数がいずれかのパラメータが$ nullのときにエラーをスローすることを知っています – alex2k8
次に、関数が欠損値を($ missing)に設定しているかどうかを知っていれば、関数呼び出し。 –