20 General utilities library [utilities]

20.11 Smart pointers [smartptr]

20.11.2 Shared-ownership pointers [util.sharedptr]

20.11.2.3 Class template weak_­ptr [util.smartptr.weak]

20.11.2.3.7 Specialized algorithms [util.smartptr.weak.spec]

template<class T> void swap(weak_ptr<T>& a, weak_ptr<T>& b) noexcept;
Effects: Equivalent to a.swap(b).