# std::swap(std::basic_string)

From cppreference.com
< cpp‎ | string‎ | basic string

template< class CharT, class Traits, class Alloc > void swap( std::basic_string<CharT, Traits, Alloc> &lhs, std::basic_string<CharT, Traits, Alloc> &rhs ); |  | (until C++17)
template< class CharT, class Traits, class Alloc > void swap( std::basic_string<CharT, Traits, Alloc> &lhs, std::basic_string<CharT, Traits, Alloc> &rhs ) noexcept(/* see below */); |  | (since C++17)

Specializes the std::swap algorithm for std::basic_string. Swaps the contents of `lhs` and `rhs`. Equivalent to lhs.swap(rhs).

### Parameters

lhs, rhs | - | strings whose contents to swap

### Return value

(none)

### Complexity

Constant.

### Exceptions

`noexcept` specification:
noexcept(noexcept(lhs.swap(rhs)))

(since C++17)

### See also

swap | swaps the contents (public member function)

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/string/basic_string/swap2&oldid=92122"