##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# std::experimental::swap(std::experimental::propagate_const)

From cppreference.com
< cpp‎ | experimental‎ | propagate const

template< class T > constexpr void swap( std::experimental::propagate_const<T>& lhs, std::experimental::propagate_const<T>& rhs ) noexcept(/* see below */); |  | (library fundamentals TS v2)

Specializes the swap algorithm for std::experimental::propagate_const. Swaps the pointers of `lhs` and `rhs`. Let `t_` designate the private data member that is the wrapped pointer-like object, then this function is equivalent to swap(lhs.t_, rhs.t_).

### [edit] Parameters

lhs, rhs | - | `propagate_const`s whose contents to swap

### [edit] Return value

(none)

### [edit] Exceptions

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

### [edit] Complexity

Constant

### [edit] See also

swap | swaps the values of two objects (function template) [edit]
swap | swaps the wrapped pointer (public member function) [edit]

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/experimental/propagate_const/swap2&oldid=92121"
Category:

- conditionally noexcept