[#bsl-unordered_multimap-0b0-emplace_hint] = xref:bsl.adoc[bsl]::xref:bsl/unordered_multimap-0b0.adoc[unordered_multimap]::emplace_hint :relfileprefix: ../../ :mrdocs: Emplace a newly constructed element near `hint`. == Synopsis Declared in `<bslstl_unorderedmultimap.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class... Args> xref:bsl/unordered_multimap-0b0/iterator.adoc[unordered_multimap<KEY, VALUE, HASH, EQUAL, ALLOCATOR>::iterator] emplace_hint( xref:bsl/unordered_multimap-0b0/const_iterator.adoc[const_iterator] hint, Args&&... args); ---- == Description Insert into this unordered multimap a newly created `value_type` object, constructed by forwarding `get_allocator()` (if required) and the specified (variable number of) `args` to the corresponding constructor of `value_type` (in constant time if the specified `hint` refers to an element in this container with a key equivalent to the key of the newly created `value_type` object), and return an iterator referring to the newly created and inserted object. If `hint` does not refer to an element in this container with a key equivalent to the key of the newly created `value_type` object, this operation has worst case `O[N]` and average case constant‐time complexity, where `N` is the size of this unordered multimap. This method requires that the (template parameter) types `KEY` and `VALUE` both be `emplace‐constructible` from `args` (see {Requirements on `KEY` and `VALUE`}). The behavior is undefined unless `hint` is an iterator in the range `[begin() .. end()]` (both endpoints included). == Return Value iterator referring to the newly inserted element == Parameters [cols="1,4"] |=== | Name| Description | *hint* | iterator hint for insertion position | *args* | constructor arguments for the new element |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#