template <class P>
pair<iterator, bool> insert(P&& obj);
Requires: value_type is constructible from std::forward<P>(obj).
Effects: Inserts obj converted to value_type if and only if there is no element in the container with key equivalent to the key of value_type(obj).
Returns: The bool component of the returned pair object indicates whether the insertion took place and the iterator component 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 if and only if there is no element in the container with key equivalent to the key of value_type(obj). 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.