Programming Serendipity

プログラミングを中心に種々雑多に書き留めます

2つのbool値によってreturn-valueが変わる場合

次のようなコードがあったとする。

bool ev1 = true;
bool ev2 = false;

if (ev1){
    if (ev2) return true;
    else return false;
}
else{
    if (ev2) return false;
    else return true;
}

これは、次のように書ける。

return !(ev1 ^ ev2);