Namespaces
Variants

std::hive<T,Allocator>::assign_range

Depuis fr.cppreference.net

 
 
 
 
template< /*container-compatible-range*/<T> R >
void assign_range( R&& rg );
(depuis C++26)

Remplace les éléments du conteneur par une copie de chaque élément dans rg.


Chaque itérateur dans la plage rg est déréférencé exactement une fois.

Le comportement est indéfini si rg chevauche le conteneur.

Paramètres

rg - une input_range dont le type de référence est convertible en type d'élément du conteneur
Exigences de type
-
std::assignable_from<T&, ranges::range_reference_t<R>> doit être modélisé. Sinon, le programme est mal formé.
-
T doit être EmplaceConstructible dans le conteneur à partir de *ranges::begin(rg). Sinon, le comportement est indéfini.

Exemple

#include <algorithm>
#include <cassert>
#include <hive>
#include <list>

int main()
{
    const auto source = std::list{2, 7, 1};
    auto destination = std::hive{3, 1, 4};
    destination.assign_range(source);
    assert(std::ranges::equal(source, destination));
}

Voir aussi

insère une plage d'éléments
(fonction membre publique)
assigne des valeurs au conteneur
(fonction membre publique)
assigne des valeurs au conteneur
(fonction membre publique)