The
copy assignment (1) copies all the elements from
x into the container (with
x preserving its contents).
The
move assignment (2) moves the elements of
x into the container (
x is left in an unspecified but valid state).
The
initializer list assignment (3) copies the elements of
il into the container.
The container preserves its
current allocator, except if the
allocator traits indicate
x's allocator should
propagate. This
allocator is used (through its
traits) to
allocate or
deallocate if there are changes in storage requirements, and to
construct or
destroy elements, if needed.