std::unordered_multiset<Key,Hash,KeyEqual,Allocator>:: emplace_hint
|
template
<
class
...
Args
>
iterator emplace_hint ( const_iterator hint, Args && ... args ) ; |
(seit C++11)
(constexpr seit C++26) |
|
Fügt ein neues Element in den Container ein und verwendet hint als Vorschlag, wo das Element platziert werden sollte.
Die Konstruktoren des Schlüssels und des zugeordneten Werts werden mit genau denselben Argumenten aufgerufen, die der Funktion übergeben wurden, weitergeleitet mit std:: forward < Args > ( args ) ... .
Falls nach dem Vorgang die neue Anzahl der Elemente größer ist als das alte
max_load_factor()
*
bucket_count()
findet eine Neuverteilung statt.
Falls eine Neuverteilung auftritt (aufgrund der Einfügung), werden alle Iteratoren ungültig. Andernfalls (keine Neuverteilung) bleiben Iteratoren gültig.
Inhaltsverzeichnis |
Parameter
| hint | - | Iterator, der als Vorschlag dient, wo das neue Element einzufügen ist |
| args | - | Argumente, die an den Konstruktor des Elements weitergeleitet werden |
Rückgabewert
Ein Iterator auf das eingefügte Element.
Ausnahmen
Wenn aus irgendeinem Grund eine Exception ausgelöst wird, hat diese Funktion keine Wirkung ( strong exception safety guarantee ).
Komplexität
Amortisiert konstant im Durchschnitt, im schlimmsten Fall linear in der Größe des Containers.
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |
Siehe auch
|
Konstruiert Element direkt vor Ort
(öffentliche Elementfunktion) |
|
|
Fügt Elemente ein
oder Knoten
(seit C++17)
(öffentliche Elementfunktion) |