これは奇妙な質問ですが、別の質問の他の人の回答で、次のように投稿しました
try
{
PingReply reply = pinger.Send(nameOrAddress);
pingable = reply.Status == IPStatus.Success;
}
どのように機能しpingable = reply.Status == IPStatus.Success;ますか?私には、if なしの if ステートメントのように見えます。
これは奇妙な質問ですが、別の質問の他の人の回答で、次のように投稿しました
try
{
PingReply reply = pinger.Send(nameOrAddress);
pingable = reply.Status == IPStatus.Success;
}
どのように機能しpingable = reply.Status == IPStatus.Success;ますか?私には、if なしの if ステートメントのように見えます。
reply.Status == IPStatus.Success
変数booleanに割り当てられるa を返します。pingable
ステートメント内でも同じことが起こります。最初に、または結果としてif式が計算され、結果のみが分岐条件としてチェックされます。truefalse
と同じ
if(reply.Status == IPStatus.Success)
pingable = true;
else
pingable = false;
コード
reply.Status == IPStatus.Success
pingable に挿入されたブール値を返します。
(reply.Status == IPStatus.Success) はブール値の true または false として評価されます
演算子==は常にブール値に解決されます
それで
pingable = reply.Status == IPStatus.Success;
とが等しい場合に入れtrue、そうでない場合に入れます。pingablereply.StatusIPStatus.Successfalsepingable
条件です。pingableブール値です。
pingable(ブール値として) に設定されreply.StatusますIPStatus.Sucess