Мне нужно сделать xor условным между 3 значениями, т.е. мне нужно, чтобы одно из трех значений было истинным, но не более одного, а не none.
Я думал, что могу использовать оператор xor ^ для этого, но он не работает должным образом.
Я ожидал, что это вернет false, но это не так. (true ^ true ^ true)
все другие комбинации, похоже, работают так, как я ожидал.
При просмотре документов для оператора xor они говорят только о сравнении двух значений, и я не могу найти что-либо в этом случае для трех или более значений в Интернете.
Может ли кто-нибудь пролить свет или предложить простой способ сделать это?