std::swap的源码实现如下:
template<typename T>
void swap(T &a,T &b) noexcept
{
T temp = std::move(a);
a = std::move(b);
b = std::move(temp);
}
std::swap是基于std::move语义实现的,关于std::move的介绍可以参考:c++11总结03——右值引用_www_dong的博客-CSDN博客
std::swap的源码实现如下:
template<typename T>
void swap(T &a,T &b) noexcept
{
T temp = std::move(a);
a = std::move(b);
b = std::move(temp);
}
std::swap是基于std::move语义实现的,关于std::move的介绍可以参考:c++11总结03——右值引用_www_dong的博客-CSDN博客