How come C# doesn't have a conditional XOR operator?
Example:
true xor false = true true xor true = false false xor false = false
Conditional xor should work like this:
true xor false = true true xor true = false false xor true = true false xor false = false But this is how the != operator actually works with bool types:
(true != false) // true (true != true) // false (false != true) // true (false != false) // false So as you see, the nonexistent ^^ can be replaced with existing !=.
In C#, conditional operators only execute their secondary operand if necessary.
Since an XOR must by definition test both values, a conditional version would be silly.
Examples:
Logical AND: & - tests both sides every time.
Logical OR: | - test both sides every time.
Conditional AND: && - only tests the 2nd side if the 1st side is true.
Conditional OR: || - only test the 2nd side if the 1st side is false.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With