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)
Definiert in Header <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) (seit C++17)
friend bool operator == ( const polymorphic_allocator & lhs,
const polymorphic_allocator & rhs ) noexcept ;
(2) (seit 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) (seit C++17)
(bis C++20)
friend bool operator ! = ( const polymorphic_allocator & lhs,
const polymorphic_allocator & rhs ) noexcept ;
(4) (seit C++17)
(bis C++20)

Vergleicht zwei polymorphe Allokatoren. Zwei polymorphe Allokatoren vergleichen gleich, wenn ihre zugrundeliegenden Speicherressourcen gleich vergleichen.

1) Gibt * lhs. resource ( ) == * rhs. resource ( ) zurück.
2) Gleich wie (1) , erlaubt jedoch Konvertierung zu polymorphic_allocator .
Diese Funktion ist für gewöhnliche unqualified oder qualified lookup nicht sichtbar und kann nur durch argument-dependent lookup gefunden werden, wenn std::pmr::polymorphic_allocator eine assoziierte Klasse der Argumente ist.
3) Gibt ! ( lhs == rhs ) zurück.
4) Gleich wie (3) , erlaubt jedoch Konvertierung zu polymorphic_allocator .
Diese Funktion ist für gewöhnliche unqualified oder qualified lookup nicht sichtbar und kann nur durch argument-dependent lookup gefunden werden, wenn std::pmr::polymorphic_allocator eine assoziierte Klasse der Argumente ist.

Der != -Operator wird synthetisiert aus operator== .

(seit C++20)

Parameter

lhs, rhs - zu vergleichende polymorphe Allokatoren

Rückgabewert

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

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrigiertes Verhalten
LWG 3683 C++17 polymorphic_allocator konnte nicht mit konvertierbaren Typen verglichen werden Überladung hinzugefügt