[#bsl-vector-0ea-operator_assign-04]
= xref:bsl.adoc[bsl]::xref:bsl/vector-0ea.adoc[vector&lt;double&gt;]::operator&equals;
:relfileprefix: ../../
:mrdocs:

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&lowbar;on&lowbar;container&lowbar;move&lowbar;assignment`, and return a reference providing modifiable access to this object&period; The contents of `rhs` are moved (in constant time) to this vector if `get&lowbar;allocator() &equals;&equals; rhs&period;get&lowbar;allocator()` (after accounting for the aforementioned trait)&semi; otherwise, all elements in this vector are either destroyed or move&hyphen;assigned to and each additional element in `rhs` is move&hyphen;inserted into this vector&period; `rhs` is left in a valid but unspecified state, and if an exception is thrown, `&ast;this` is left in a valid but unspecified state&period; This method requires that the (template parameter) type `VALUE&lowbar;TYPE` be `move&hyphen;assignable` and `move&hyphen;insertable` into this vector (see &lcub;Requirements on `VALUE&lowbar;TYPE`&rcub;)&period; Note that the `vector` template arguments must be explicitly spelled out to work around an MSVC 2022 bug, see DRQS 171087946&period;

== Synopsis

Declared in `&lt;bslstl&lowbar;vector&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/vector-00d.adoc[vector&lt;double&gt;]&
operator&equals;(xref:BloombergLP/bslmf/MovableRef.adoc[BloombergLP::bslmf::MovableRef&lt;vector&lt;double, allocator&lt;double&gt;&gt;&gt;] rhs) noexcept(&sol;&ast; see-below &ast;&sol;);
----

== Exception specification

This function is potentially-throwing unless `AllocatorTraits&colon;&colon;propagate&lowbar;on&lowbar;container&lowbar;move&lowbar;assignment&colon;&colon;value &verbar;&verbar; AllocatorTraits&colon;&colon;is&lowbar;always&lowbar;equal&colon;&colon;value`.


[.small]#Created with https://www.mrdocs.com[MrDocs]#
