unordered_multiset emplace() function in C++ STL (original) (raw)

Last Updated : 2 Aug, 2018

The unordered_multiset::emplace() is a built-in function in C++ STL which inserts a new element in the unordered_multiset container. The insertion is done automatically at the position according to the container's criterion. It increases the size of the container by one. Syntax:

unordered_multiset_name.emplace(val)

Parameters: The function accepts a single mandatory parameter val which is to be inserted in the container. Return Value: It returns an iterator which points to the newly inserted element. Below programs illustrates the above function: Program 1:

CPP `

// C++ program to illustrate the // unordered_multiset::emplace() function #include <bits/stdc++.h> using namespace std;

int main() {

// declaration
unordered_multiset<int> sample;

// inserts element using emplace()
sample.emplace(11);
sample.emplace(11);
sample.emplace(11);
sample.emplace(12);
sample.emplace(13);
sample.emplace(13);
sample.emplace(14);

cout << "Elements: ";

for (auto it = sample.begin(); it != sample.end(); it++)
    cout << *it << " ";
return 0;

}

`

Output:

Elements: 14 11 11 11 12 13 13

Program 2:

CPP `

// C++ program to illustrate the // unordered_multiset::emplace() function #include <bits/stdc++.h> using namespace std;

int main() {

// declaration
unordered_multiset<char> sample;

// inserts element using emplace()
sample.emplace('a');
sample.emplace('a');
sample.emplace('a');
sample.emplace('b');
sample.emplace('b');
sample.emplace('c');
sample.emplace('d');

cout << "Elements: ";

for (auto it = sample.begin(); it != sample.end(); it++)
    cout << *it << " ";
return 0;

}

`

Output:

Elements: d a a a b b c