La función unordered_set::emplace() es una función integrada en C++ STL que se usa para insertar un elemento en un contenedor unordered_set. El elemento se inserta solo si aún no está presente en el contenedor. Esta inserción también aumenta efectivamente el tamaño del contenedor 1.
Sintaxis :
unordered_set_name.emplace(element)
Parámetro : esta función acepta un solo elemento de parámetro que se insertará en el contenedor unordered_set.
Valor de retorno : esta función devuelve un par en la inserción exitosa. El par consta de un iterador que apunta al elemento recién insertado y un valor booleano True . Si el elemento que se va a insertar ya está presente en el contenedor, devuelve un par con un iterador que apunta al elemento ya presente y un valor booleano falso .
Los siguientes programas ilustran la función unordered_set::emplace() :
Programa 1 :
CPP
// 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
Programa 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
Complejidad temporal: O(n)