cpp/named req/MoveAssignable
Template:cpp/concept/title Template:cpp/concept/sidebar
Specifies that an instance of the type can be move-assigned (moved). This means that type has move semantics: that is, can transfer its internal state to another instance of the same type potentially minimizing the overhead.
Requirements
The type must meet Template:concept requirements and/or implement the following functions:
Type::operator=
Type& Type::operator=( Type&& other ); Type& Type::operator=( const Type&& other ); |
(One of the variants is sufficient) | |
Move assignment operator: assigns the contents of other
. The internal state of other
is unspecified after the move. However, it must still be valid, that is, no invariants of the type are broken. The function must return *this
.
The following expressions must have the specified effects:
See also
(C++11)(C++11)(C++11) |
checks if a type has a move assignment operator (class template) |