Namespaces
Variants

std::experimental::pmr:: resource_adaptor, std::pmr::experimental:: resource_adaptor

From cppreference.net
Definido en el encabezado <experimental/memory_resource>
template < class Alloc >

using resource_adaptor = /*resource-adaptor-imp*/ <
typename std:: allocator_traits < Alloc > ::

template rebind_alloc < char >> ;
(library fundamentals TS)
template < class Alloc >
class /*resource-adaptor-imp*/ : public memory_resource ; // solo para exposición
(library fundamentals TS)

La plantilla de alias resource_adaptor adapta el tipo de asignador Alloc con una interfaz memory_resource . El asignador se reasocia a un tipo de valor char antes de ser realmente adaptado (usando la plantilla de clase resource-adaptor-imp ), de modo que adaptar especializaciones de la misma plantilla de asignador siempre produce el mismo tipo, independientemente del tipo de valor con el que se instancie originalmente la plantilla de asignador.

resource_adaptor se define en el espacio de nombres std::experimental::pmr , y el tipo base memory_resorce en esta página es std::experimental::pmr::memory_resource .

(library fundamentals TS)
(until library fundamentals TS v3)

resource_adaptor se define en el espacio de nombres std::pmr::experimental , y el tipo base memory_resorce en esta página es std::pmr::memory_resource .

(library fundamentals TS v3)

resource-adaptor-imp es una plantilla de clase cuyos miembros se describen a continuación. El nombre resource-adaptor-imp es solo para fines expositivos y no es normativo.

Además de cumplir con los Allocator requisitos, Alloc debe satisfacer adicionalmente los siguientes requisitos:

Tipos de miembros de resource-adaptor-imp

Tipo de miembro Definición
allocator_type Alloc

Funciones miembro de resource-adaptor-imp

resource-adaptor-imp :: resource-adaptor-imp

/*resource-adaptor-imp*/ ( ) = default ;
(1) (library fundamentals TS)
/*resource-adaptor-imp*/ ( const /*resource-adaptor-imp*/ & other )
= default ;
(2) (library fundamentals TS)
/*resource-adaptor-imp*/ ( /*resource-adaptor-imp*/ && other )
= default ;
(3) (library fundamentals TS)
explicit /*resource-adaptor-imp*/ ( const Alloc & a2 ) ;
(4) (library fundamentals TS)
explicit /*resource-adaptor-imp*/ ( Alloc && a2 ) ;
(5) (library fundamentals TS)
1) Constructor por defecto. Construye por defecto el asignador encapsulado.
2) Constructor de copia. Construye por copia el asignador encapsulado desde el asignador encapsulado por other .
3) Constructor de movimiento. Construye por movimiento el asignador encapsulado desde el asignador encapsulado por other .
4) Inicializa el asignador encapsulado con a2 .
5) Inicializa el asignador encapsulado con std :: move ( a2 ) .

Parámetros

other - otro objeto resource-adaptor-imp desde el cual copiar o mover
a2 - otro objeto Alloc desde el cual copiar o mover

resource-adaptor-imp :: get_allocator

allocator_type get_allocator ( ) const ;
(library fundamentals TS)

Devuelve una copia del asignador encapsulado.

resource-adaptor-imp :: operator=

/*resource-adaptor-imp*/ & operator = ( const /*resource-adaptor-imp*/ & other )
= default ;
(library fundamentals TS)

Operador de asignación de copia por defecto. Asigna por copia el asignador envuelto desde el de other .

resource-adaptor-imp :: do_allocate

protected :
virtual void * do_allocate ( std:: size_t bytes, std:: size_t alignment ) ;
(library fundamentals TS)

Asigna memoria utilizando la función miembro allocate del asignador encapsulado.

resource-adaptor-imp :: do_deallocate

protected :
virtual void do_deallocate ( void * p, std:: size_t bytes, std:: size_t alignment ) ;
(library fundamentals TS)

Desasigna el almacenamiento apuntado por p utilizando la función miembro deallocate del asignador encapsulado.

p debe haber sido asignado utilizando la función miembro allocate de un asignador que compare igual al asignador encapsulado, y no debe haber sido desasignado posteriormente.

resource-adaptor-imp :: do_is_equal

protected :
virtual bool do_is_equal ( const memory_resource & other ) const noexcept ;
(library fundamentals TS)

Sea p igual a dynamic_cast < const /*resource-adaptor-imp*/ * > ( & other ) . Si p es un valor de puntero nulo, retorna false . De lo contrario, retorna el resultado de comparar los asignadores encapsulados por * p y * this usando operator == .