Respuestas:
Si. Esta versión de asignar se define como
template<class InputIterator> constexpr basic_string& assign(InputIterator first, InputIterator last);Restricciones : InputIterator es un tipo que califica como un iterador de entrada.
Efectos : Equivalente a: return asignar (basic_string (first, last, get_allocator ()));
que muestra un cálculo temporal antes de que tengan lugar los cambios.