[#bsl-multimap-0ae-insert-09]
= xref:bsl.adoc[bsl]::xref:bsl/multimap-0ae.adoc[multimap]::insert
:relfileprefix: ../../
:mrdocs:

`insert` overloads

== Synopses

Declared in `&lt;bslstl&lowbar;multimap&period;h&gt;`

Insert each element from `values` into this multimap&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
void
xref:bsl/multimap-0ae/insert-04d.adoc[insert](std::initializer&lowbar;list&lt;value&lowbar;type&gt; values);
----

[.small]#xref:bsl/multimap-0ae/insert-04d.adoc[_» more&period;&period;&period;_]#

Insert a copy of `value` into this multimap&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/multimap-0ae/iterator.adoc[multimap&lt;KEY, VALUE, COMPARATOR, ALLOCATOR&gt;::iterator]
xref:bsl/multimap-0ae/insert-0e.adoc[insert](xref:bsl/multimap-0ae/value_type.adoc[value&lowbar;type] const& value);
----

[.small]#xref:bsl/multimap-0ae/insert-0e.adoc[_» more&period;&period;&period;_]#

Insert an element constructed from `value`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class ALT&lowbar;VALUE&lowbar;TYPE&gt;
xref:bsl/multimap-0ae/iterator.adoc[iterator]
xref:bsl/multimap-0ae/insert-04c.adoc[insert](ALT&lowbar;VALUE&lowbar;TYPE&& value)
requires std&colon;&colon;is&lowbar;constructible&lt;value&lowbar;type,
                                             ALT&lowbar;VALUE&lowbar;TYPE&amp;&amp;&gt;&colon;&colon;value;
----

[.small]#xref:bsl/multimap-0ae/insert-04c.adoc[_» more&period;&period;&period;_]#

Insert a copy of `value` near `hint`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:bsl/multimap-0ae/iterator.adoc[multimap&lt;KEY, VALUE, COMPARATOR, ALLOCATOR&gt;::iterator]
xref:bsl/multimap-0ae/insert-0a.adoc[insert](
    xref:bsl/multimap-0ae/const_iterator.adoc[const&lowbar;iterator] hint,
    xref:bsl/multimap-0ae/value_type.adoc[value&lowbar;type] const& value);
----

[.small]#xref:bsl/multimap-0ae/insert-0a.adoc[_» more&period;&period;&period;_]#

Insert each element from `&lsqb;first, last)&rsqb;` into this multimap&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class INPUT&lowbar;ITERATOR&gt;
void
xref:bsl/multimap-0ae/insert-0d.adoc[insert](
    INPUT&lowbar;ITERATOR first,
    INPUT&lowbar;ITERATOR last);
----

[.small]#xref:bsl/multimap-0ae/insert-0d.adoc[_» more&period;&period;&period;_]#

Insert an element constructed from `value` near `hint`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class ALT&lowbar;VALUE&lowbar;TYPE&gt;
xref:bsl/multimap-0ae/iterator.adoc[iterator]
xref:bsl/multimap-0ae/insert-08.adoc[insert](
    xref:bsl/multimap-0ae/const_iterator.adoc[const&lowbar;iterator] hint,
    ALT&lowbar;VALUE&lowbar;TYPE&& value)
requires std&colon;&colon;is&lowbar;constructible&lt;value&lowbar;type,
                                             ALT&lowbar;VALUE&lowbar;TYPE&amp;&amp;&gt;&colon;&colon;value;
----

[.small]#xref:bsl/multimap-0ae/insert-08.adoc[_» more&period;&period;&period;_]#

== Return Value

iterator referring to the newly inserted element

== Parameters

[cols="1,4"]
|===
| Name| Description
| *values*
| initializer list of elements to insert
| *value*
| element to copy&hyphen;insert
| *hint*
| iterator hint for the insertion position
| *first*
| beginning of the range to insert
| *last*
| end of the range to insert
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
