Namespaces
Variants

std::pmr:: operator==, std::pmr:: operator!=

From cppreference.net
Memory management library
( exposition only* )
Allocators
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Memory resources
Uninitialized storage (until C++20)
( until C++20* )
( until C++20* )
( until C++20* )

Garbage collector support (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
Definido en el encabezado <memory_resource>
template < class T1, class T2 >

bool operator == ( const std:: pmr :: polymorphic_allocator < T1 > & lhs,

const std:: pmr :: polymorphic_allocator < T2 > & rhs ) noexcept ;
(1) (desde C++17)
friend bool operator == ( const polymorphic_allocator & lhs,
const polymorphic_allocator & rhs ) noexcept ;
(2) (desde C++17)
template < class T1, class T2 >

bool operator ! = ( const std:: pmr :: polymorphic_allocator < T1 > & lhs,

const std:: pmr :: polymorphic_allocator < T2 > & rhs ) noexcept ;
(3) (desde C++17)
(hasta C++20)
friend bool operator ! = ( const polymorphic_allocator & lhs,
const polymorphic_allocator & rhs ) noexcept ;
(4) (desde C++17)
(hasta C++20)

Compara dos asignadores polimórficos. Dos asignadores polimórficos son iguales si su recurso de memoria subyacente es igual.

1) Devuelve * lhs. resource ( ) == * rhs. resource ( ) .
2) Igual que (1) , permitiendo conversión a polymorphic_allocator .
Esta función no es visible para la búsqueda no calificada ordinaria o la búsqueda calificada , y solo puede ser encontrada mediante búsqueda dependiente de argumentos cuando std::pmr::polymorphic_allocator es una clase asociada de los argumentos.
3) Devuelve ! ( lhs == rhs ) .
4) Igual que (3) , permitiendo conversión a polymorphic_allocator .
Esta función no es visible para la búsqueda no calificada ordinaria o la búsqueda calificada , y solo puede ser encontrada mediante búsqueda dependiente de argumentos cuando std::pmr::polymorphic_allocator es una clase asociada de los argumentos.

El operador != es sintetizado a partir de operator== .

(since C++20)

Parámetros

lhs, rhs - asignadores polimórficos a comparar

Valor de retorno

1,2) * lhs. resource ( ) == * rhs. resource ( )
3,4) ! ( lhs == rhs )

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares de C++ publicados anteriormente.

DR Aplicado a Comportamiento publicado Comportamiento correcto
LWG 3683 C++17 polymorphic_allocator no podía compararse con tipos convertibles a él sobrecarga añadida