Namensräume
Varianten
Aktionen

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

Von cppreference.com
 
 
Speicherverwaltungsbibliothek
(nur Exposition*)
Algorithmen für uninitialisierten Speicher
(C++17)
(C++17)
(C++17)
Beschränkte uninitialisierte
Speicher-Algorithmen
C-Bibliothek

Allocatoren
Speicherressourcen
Unterstützung für Garbage Collection
(C++11)(bis C++23)
(C++11)(bis C++23)
(C++11)(bis C++23)
(C++11)(bis C++23)
(C++11)(bis C++23)
(C++11)(bis C++23)
Uninitialisierter Speicher
Explizites Lebenszeitmanagement
 
 
template< class Alloc >
/* nicht spezifiziert */ /*outermost*/( Alloc&& alloc = *this );
(1) (nur Exposition*)
template< class T, class... Args >
void /*outermost-construct*/( T* p, Args&&... args );
(2) (nur Exposition*)
template< class T >
void /*outermost-destroy*/( T* p );
(3) (nur Exposition*)

Diese Member-Funktions-Templates, die nur der Darstellung dienen, werden in den Member-Funktionen construct() und destroy() verwendet.

1) Ruft den äußersten Allokator von alloc ab.
  • Wenn der Ausdruck alloc.outer_allocator() gültig ist, gibt outermost (alloc.outer_allocator()) zurück.
  • Andernfalls wird alloc zurückgegeben.
2,3) Konstruiert oder zerstört ein Objekt mit dem äußersten Allokator von *this.
Gegeben den Typ std::allocator_traits<std::remove_reference_t<decltype(outermost ())>> als outermost_traits
2) Äquivalent zu outermost_traits::construct(outermost (), p, std::forward<Args>(args)...);.
3) Äquivalent zu outermost_traits::destroy(outermost (), p);.

[bearbeiten] 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 3116 C++11 Die Rekursionsbedingung für outermost war „alloc
hat die Member-Funktion outer_allocator()
geändert zu „der Ausdruck
alloc.outer_allocator() ist gültig“

[bearbeiten] Siehe auch

[static]
konstruiert ein Objekt im allozierten Speicher
(function template) [edit]
[static]
destruiert ein Objekt im allozierten Speicher
(function template) [edit]