変態スワップ
はてぶで見つけたので備忘録として///
XORswap(値の交換)
ある変数aとbの値を交換したい場合に、一時変数を用意することなしにxor演算だけで交換できます。
実装
#include <iostream> void swap(int& a, int& b){ b ^= a; a ^= b; b ^= a; } int main(){ int a = 1, b = 2; swap(a, b); std::cout << a << " " << b << std::endl; return 0; }