std:: uninitialized_construct_using_allocator
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Definiert im Header
<memory>
|
||
|
template
<
class
T,
class
Alloc,
class
...
Args
>
constexpr
T
*
uninitialized_construct_using_allocator
(
T
*
p,
|
(seit C++20) | |
Erstellt ein Objekt des gegebenen Typs
T
mittels
Uses-Allocator-Konstruktion
an der nicht initialisierten Speicherstelle, die durch
p
angezeigt wird.
Entspricht
return std::apply( [&]<class... Xs>(Xs&&...xs) { return std::construct_at(p, std::forward<Xs>(xs)...); }, std::uses_allocator_construction_args<T>(alloc, std::forward<Args>(args)...));
` Tags wurde gemäß den Anweisungen nicht übersetzt, da es sich um C++-Code handelt. Die HTML-Struktur und Formatierung bleiben vollständig erhalten.
Inhaltsverzeichnis |
Parameter
| p | - | die Speicheradresse, an der das Objekt platziert wird |
| alloc | - | der zu verwendende Allokator |
| args | - | die an den Konstruktor von T zu übergebenden Argumente |
Rückgabewert
Zeiger auf das neu erstellte Objekt vom Typ
T
.
Exceptions
Kann jede Ausnahme werfen, die vom Konstruktor von
T
geworfen wird, typischerweise einschließlich
std::bad_alloc
.
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |
Siehe auch
|
(C++11)
|
prüft, ob der angegebene Typ uses-allocator-Konstruktion unterstützt
(Klassen-Template) |
|
(C++20)
|
erstellt ein Objekt des gegebenen Typs mittels uses-allocator-Konstruktion
(Funktions-Template) |