std::pmr::polymorphic_allocator<T>::allocate_bytes
Von cppreference.com
< cpp | memory | polymorphic allocator
| void* allocate_bytes( std::size_t nbytes, std::size_t alignment = alignof(std::max_align_t) ); |
(seit C++20) | |
Allokiert `nbytes` Bytes Speicher mit der angegebenen Ausrichtung `alignment` unter Verwendung der zugrunde liegenden Speicherressource. Entspricht return resource()->allocate(nbytes, alignment);.
Inhalt |
[edit] Parameter
| nbytes | - | die Anzahl der zu allokierenden Bytes |
| alignment | - | die zu verwendende Ausrichtung |
[edit] Rückgabewert
Ein Zeiger auf den allokierten Speicher.
[edit] Hinweise
Diese Funktion wurde für die Verwendung mit dem voll spezialisierten Allokator std::pmr::polymorphic_allocator<> eingeführt, kann aber in jeder Spezialisierung nützlich sein.
Der Rückgabetyp ist void* (anstelle von z. B. std::byte*), um die Konvertierung in einen beliebigen Zeigertyp U* durch static_cast<U*> zu unterstützen.
[edit] Ausnahmen
Kann alle Ausnahmen auslösen, die vom Aufruf von resource()->allocate ausgelöst werden.
[edit] Siehe auch
| (C++20) |
allokiert rohen Speicher, der für ein Objekt oder ein Array geeignet ist (public member function) |
| (C++20) |
allokiert und konstruiert ein Objekt (public member function) |
| alloziiert Speicher (public member function) | |
| [static] |
alloziiert uninitialisierten Speicher unter Verwendung des Allokators (public static member function of std::allocator_traits<Alloc>) |
| alloziert Speicher (public member function of std::pmr::memory_resource) |