El método get_allocator() de unordered_set es parte de la biblioteca de plantillas estándar (STL) de C++. Este método obtiene el objeto asignador almacenado y lo devuelve.
Sintaxis:
Allocator_type get_allocator() const;
donde allocator_type es el tipo de asignador utilizado por el contenedor.
Valor devuelto: Devuelve el objeto asignador utilizado para construir el contenedor.
Excepciones: en este método, se lanza una excepción si cualquier objeto de comparación de elementos lanza una excepción.
El siguiente programa ilustra la función unordered_set::get_allocator()
Programa 1:
// CPP program to illustrate // unordered_set get_allocator() #include <iostream> #include <unordered_set> using namespace std; int main() { //'c' is object of 'unordered_set' unordered_set<int> c; //'allocator_type' is inherit in 'unordered_set' //'a' is object of 'allocator_type' //'get_allocator()' is member of 'unordered_set' unordered_set<int>::allocator_type a = c.get_allocator(); // Comparing the Allocator with Pair<int, int> cout << "Is allocator Pair<int, int> : " << boolalpha << (a == allocator<pair<int, int> >()); return 0; }
Is allocator Pair: true
Complejidad:
se necesita un tiempo constante (O (1)) de complejidad para realizar una operación.
Programa 2:
// CPP program to illustrate // unordered_set get_allocator() #include <iostream> #include <unordered_map> using namespace std; int main(void) { unordered_map<char, int> um; pair<const char, int>* a; a = um.get_allocator().allocate(8); cout << "Allocated size = " << sizeof(*a) * 8 << endl; return 0; }
Allocated size = 64
Publicación traducida automáticamente
Artículo escrito por SoumikMondal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA