Namensräume
Varianten
Aktionen

std::pmr::polymorphic_allocator<T>::allocate

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
 
 
T* allocate( std::size_t n );
(seit C++17)

Allokiert Speicherplatz für n Objekte vom Typ T unter Verwendung der zugrunde liegenden Speicherressource. Entspricht return static_cast<T*>(resource()->allocate(n * sizeof(T), alignof(T)));.

Inhalt

[edit] Parameter

n - die Anzahl der Objekte, für die Speicher allokiert werden soll

[edit] Rückgabewert

Ein Zeiger auf den allokierten Speicher.

[edit] Ausnahmen

Wirft std::bad_array_new_length, wenn n > std::numeric_limits<std::size_t>::max() / sizeof(T); kann auch alle Ausnahmen werfen, die vom Aufruf an resource()->allocate geworfen werden.

[edit] 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 3038 C++17 allocate könnte Speicherplatz mit falscher Größe allokieren wirft stattdessen length_error
LWG 3237 C++17 die von allocate geworfene Ausnahme war inkonsistent mit std::allocator::allocate konsistent gemacht

[edit] Siehe auch

allokiert rohen, ausgerichteten Speicher aus der zugrundeliegenden Ressource
(public member function) [edit]
allokiert rohen Speicher, der für ein Objekt oder ein Array geeignet ist
(public member function) [edit]
allokiert und konstruiert ein Objekt
(public member function) [edit]
[static]
alloziiert uninitialisierten Speicher unter Verwendung des Allokators
(public static member function of std::allocator_traits<Alloc>) [bearbeiten]
alloziert Speicher
(public member function of std::pmr::memory_resource) [bearbeiten]