Namespaces
Variants

std::scoped_allocator_adaptor<OuterAlloc,InnerAlloc...>:: outermost , outermost-construct , outermost-destroy

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)
template < class Alloc >
/* nicht spezifiziert */ /*outermost*/ ( Alloc && alloc = * this ) ;
(1) ( Nur zur Darstellung* )
template < class T, class ... Args >
void /*outermost-construct*/ ( T * p, Args && ... args ) ;
(2) ( Nur zur Darstellung* )
template < class T >
void /*outermost-destroy*/ ( T * p ) ;
(3) ( Nur zur Darstellung* )

Diese nur zur Darstellung dienenden Hilfs-Member-Funktions-Templates werden in den Member-Funktionen construct() und destroy() verwendet.

1) Ermittelt den äußersten Allokator von alloc .
  • Falls der Ausdruck alloc. outer_allocator ( ) gültig ist, gibt outermost  ( alloc. outer_allocator ( ) ) zurück.
  • Andernfalls gibt alloc zurück.
2,3) Konstruiert oder zerstört ein Objekt unter Verwendung des äußersten Allokators von * this .
Gegeben sei der Typ std:: allocator_traits < std:: remove_reference_t < decltype ( outermost  ( ) ) >> als outermost_traits :
2) Entspricht outermost_traits :: construct ( outermost  ( ) , p, std:: forward < Args > ( args ) ... ) ; .
3) Entspricht outermost_traits :: destroy ( outermost  ( ) , p ) ; .

Fehlerberichte

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

DR Angewendet auf Verhalten wie veröffentlicht Korrektes Verhalten
LWG 3116 C++11 die Rekursionsbedingung für outermost war " alloc
besitzt die Memberfunktion outer_allocator() "
geändert zu "der Ausdruck
alloc. outer_allocator ( ) ist gültig"

Siehe auch

[static]
konstruiert ein Objekt im allozierten Speicher
(Funktions-Template)
[static]
zerstört ein im allozierten Speicher gespeichertes Objekt
(Funktions-Template)