Last Updated : 05 Jun, 2023
The unordered_set::emplace() function is a built-in function in C++ STL which is used to insert an element in an unordered_set container. The element is inserted only if it is not already present in the container. This insertion also effectively increases the container size 1.
Syntax:
unordered_set_name.emplace(element)
Parameter: This function accepts a single parameter element which is to be inserted in the unordered_set container.
Return Value: This function returns a pair on successful insertion. The pair consists of an iterator pointing to the newly inserted element and a boolean value True. If the element to be inserted is already present in the container then it returns a pair with an iterator pointing to the already present element and a boolean value false.
Below programs illustrate the unordered_set::emplace() function:
Program 1:
// C++ program to illustrate the
// unordered_set::emplace() function
#include <iostream>
#include <unordered_set>
using namespace std;
int main()
{
unordered_set<int> sampleSet;
// Inserting elements
sampleSet.emplace(5);
sampleSet.emplace(10);
sampleSet.emplace(15);
sampleSet.emplace(20);
sampleSet.emplace(25);
// displaying all elements of sampleSet
cout << "sampleSet contains: ";
for (auto itr = sampleSet.begin(); itr != sampleSet.end(); itr++) {
cout << *itr << " ";
}
return 0;
}
sampleSet contains: 25 5 10 15 20
Program 2:
CPP
// C++ program to illustrate the
// unordered_set::emplace() function
#include <iostream>
#include <unordered_set>
using namespace std;
int main()
{
unordered_set<string> sampleSet;
// Inserting elements using
// emplace() function
sampleSet.emplace("Welcome");
sampleSet.emplace("To");
sampleSet.emplace("GeeksforGeeks");
sampleSet.emplace("Computer Science Portal");
sampleSet.emplace("For Geeks");
// displaying all elements of sampleSet
cout << "sampleSet contains: ";
for (auto itr = sampleSet.begin(); itr != sampleSet.end(); itr++) {
cout << *itr << " ";
}
return 0;
}
sampleSet contains: Welcome To GeeksforGeeks For Geeks Computer Science Portal
Time complexity: O(n)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4