Как функция swap реализована в STL? Это так просто:
template<typename T> void swap(T& t1, T& t2) {
T tmp(t1);
t1=t2;
t2=tmp;
}
В других сообщениях они говорят об специализировании этой функции для вашего собственного класса. Зачем мне это нужно? Почему я не могу использовать функцию std::swap
?