Namensräume
Varianten
Aktionen

std::unordered_multimap<Key,T,Hash,KeyEqual,Allocator>::emplace_hint

Von cppreference.com
 
 
 
 
template< class... Args >
iterator emplace_hint( const_iterator hint, Args&&... args );
(seit C++11)

Fügt ein neues Element in den Container ein und verwendet hint als Vorschlag, wo das Element platziert werden soll.

Der Konstruktor des Elementtyps (value_type, also std::pair<const Key, T>) wird mit genau denselben Argumenten aufgerufen, die der Funktion übergeben wurden, weitergeleitet mit std::forward<Args>(args)....

Wenn nach der Operation die neue Anzahl der Elemente größer ist als max_load_factor() * bucket_count(), findet ein Re-Hashing statt.
Wenn Rehashing stattfindet (aufgrund der Einfügung), werden alle Iteratoren ungültig. Andernfalls (kein Rehashing) werden Iteratoren nicht ungültig.

Inhalt

[bearbeiten] Parameter

hint - iterator, der als Vorschlag dient, wo das neue Element eingefügt werden soll
args - Argumente, die an den Konstruktor des Elements weitergeleitet werden

[bearbeiten] Rückgabewert

Ein Iterator zu dem eingefügten Element.

[bearbeiten] Ausnahmen

Wenn aus irgendeinem Grund eine Ausnahme ausgelöst wird, hat diese Funktion keine Auswirkungen (starkes Ausnahmesicherheitsgarantie).

[bearbeiten] Komplexität

Im Durchschnitt amortisiert konstant, im schlimmsten Fall linear zur Größe des Containers.

[bearbeiten] Beispiel

[bearbeiten] Siehe auch

konstruiert Elemente direkt (in-place)
(public member function) [edit]
fügt Elemente ein oder Knoten(seit C++17)
(public member function) [edit]