23 General utilities library [utilities]

23.7 Variants [variant]

23.7.10 Specialized algorithms [variant.specalg]

template <class... Types> void swap(variant<Types...>& v, variant<Types...>& w) noexcept(see below);

Effects: Эквивалентно v.swap(w).

Remarks: Эта функция не должна участвовать в разрешении перегрузки, за исключением случаев, когда она is_­move_­constructible_­v<Ti> && is_­swappable_­v<Ti> предназначена true для всех i. Выражение внутри noexcept эквивалентно noexcept(v.swap(w)).