Emplace a newly constructed value_type near hint if not present.
Declared in <bslstl_set.h>
template<class... Args>
set<KEY, COMPARATOR, ALLOCATOR>::iterator
emplace_hint(
const_iterator hint,
Args&&... arguments);
Construct by forwarding get_allocator() (if required) and the specified arguments to the corresponding constructor of value_type (in amortized constant time if hint is a valid immediate successor); otherwise this method has no effect (other than possibly creating a temporary value_type object). Return an iterator referring to the (possibly newly created and inserted) object in this set whose value is equivalent to that of an object constructed from arguments. If hint is not a valid immediate successor to the value_type object implied by arguments, this operation has O[log(N)] complexity where N is the size of this set. This method requires that the (template parameter) type KEY be emplace-constructible from arguments (see {Requirements on KEY}). The behavior is undefined unless hint is an iterator in the range [begin() .. end()] (both endpoints included).
iterator to the existing or newly inserted element
| Name | Description |
|---|---|
| hint | iterator hint for insertion position |
| arguments | constructor arguments for the new element |