Biblioteca C ++ Unordered_set - emplazamiento

Descripción

Inserta un nuevo elemento en unordered_set si su valor es único. Este nuevo elemento se construye en su lugar utilizando args como argumentos para el constructor del elemento.

Declaración

A continuación se muestra la declaración de std :: unordered_set :: emplace.

C ++ 11

template <class... Args>
pair <iterator,bool> emplace ( Args&&... args );

Parámetros

args - Estos argumentos se pasan al constructor.

Valor devuelto

Devuelve si la función inserta correctamente el elemento (porque no existía ningún otro elemento con el mismo valor), la función devuelve un par con un iterador al elemento recién insertado y un valor verdadero.

Excepciones

Se lanza una excepción si cualquier objeto de comparación de elementos produce una excepción.

Tenga en cuenta que los argumentos no válidos provocan un comportamiento indefinido.

Complejidad del tiempo

tiempo constante.

Ejemplo

El siguiente ejemplo muestra el uso de std :: unordered_set :: emplace.

#include <iostream>
#include <string>
#include <unordered_set>

int main () {
   std::unordered_set<std::string> myset;

   myset.emplace ("kittu");
   myset.emplace ("prasad");
   myset.emplace ("sairamkrishna");

   std::cout << "myset containing:";
   for (const std::string& x: myset) std::cout << " " << x;

   std::cout << std::endl;
   return 0;
}

Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:

myset containing: sairamkrishna prasad kittu