Namespaces
Variants

std::flat_multiset<Key,Compare,KeyContainer>:: emplace

From cppreference.net

template < class ... Args >
iterator emplace ( Args && ... args ) ;
(depuis C++23)
(constexpr depuis C++26)

Insère un nouvel élément dans le conteneur construit sur place avec les args donnés.

First, initializes an object t of type value_type with std:: forward < Args > ( args ) ... , then inserts t as if by
auto it = ranges::upper_bound(c, t, compare);
c.insert(it, std::move(t));

Cette surcharge participe à la résolution de surcharge seulement si std:: is_constructible_v < value_type, Args... > est true .

Si value_type n'est pas EmplaceConstructible dans flat_multiset à partir de args , le comportement est indéfini.

Table des matières

Paramètres

args - arguments à transmettre au constructeur de l'élément

Valeur de retour

Un itérateur vers l'élément inséré.

Exceptions

Si une exception est levée pour quelque raison que ce soit, cette fonction n'a aucun effet ( garantie forte de sûreté face aux exceptions ).

Complexité

Logarithmique par rapport à la taille du conteneur.

Notes

L'utilisation judicieuse de emplace permet de construire le nouvel élément tout en évitant les opérations inutiles de copie ou de déplacement.

Exemple

Voir aussi

construit des éléments en place en utilisant un indice
(fonction membre publique)
insère des éléments
(fonction membre publique)