template <class P>
iterator insert(P&& obj);
Requires: value_type is constructible from std::forward<P>(obj).
Effects: Inserts obj converted to value_type.
Returns: An iterator that points to the element with key equivalent to the key of value_type(obj).
Complexity: Average case Ο(1), worst case Ο(size()).
Remarks: This signature shall not participate in overload resolution unless P is implicitly convertible to value_type.
template <class P>
iterator insert(const_iterator hint, P&& obj);
Requires: value_type is constructible from std::forward<P>(obj).
Effects: Inserts obj converted to value_type. The iterator hint is a hint pointing to where the search should start.
Returns: An iterator that points to the element with key equivalent to the key of value_type(obj).
Complexity: Average case Ο(1), worst case Ο(size()).
Remarks: This signature shall not participate in overload resolution unless P is implicitly convertible to value_type.