Assign to this object the value of the specified rhs object, propagate to this object the allocator of rhs if the ALLOCATOR type has trait propagate_on_container_move_assignment, and return a reference providing modifiable access to this object. The contents of rhs are moved (in constant time) to this vector if get_allocator() == rhs.get_allocator() (after accounting for the aforementioned trait); otherwise, all elements in this vector are either destroyed or move‐assigned to and each additional element in rhs is move‐inserted into this vector. rhs is left in a valid but unspecified state, and if an exception is thrown, *this is left in a valid but unspecified state. This method requires that the (template parameter) type VALUE_TYPE be move‐assignable and move‐insertable into this vector (see {Requirements on VALUE_TYPE}). Note that the vector template arguments must be explicitly spelled out to work around an MSVC 2022 bug, see DRQS 171087946.

Synopsis

Exception specification

This function is potentially-throwing unless AllocatorTraits::propagate_on_container_move_assignment::value || AllocatorTraits::is_always_equal::value.

Created with MrDocs