#pragma once #include <utility> template<typename T> void Swap(T& first, T& second) { T tmp = std::move(first); first = std::move(second); second = std::move(tmp); }