Я хочу обменять значения указывает int *x и int *y используя выражение *x ^= *y ^= *x ^= *y;
(Ну, я знаю, что это выражение неудобно, и Я просто хочу знать разницу, без обид.) Это работало в C++, но
До C++ 11, он всегда был случай, копирующий оператор присваивания всегда должен проходить по константной ссылке, например, так: template <typename T>
ArrayStack<T>& operator= (const ArrayStack& other