Namespaces
Variants

std::allocator<T>:: construct

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)
Definiert im Header <memory>
void construct ( pointer p, const_reference val ) ;
(1) (bis C++11)
template < class U, class ... Args >
void construct ( U * p, Args && ... args ) ;
(2) (seit C++11)
(veraltet in C++17)
(entfernt in C++20)

Konstruiert ein Objekt vom Typ T im allokierten nicht-initialisierten Speicher, auf den p zeigt, unter Verwendung von global placement-new.

1) Ruft :: new ( ( void * ) p ) T ( val ) auf.
2) Ruft :: new ( ( void * ) p ) U ( std:: forward < Args > ( args ) ... ) auf.

Inhaltsverzeichnis

Parameter

p - Zeiger auf allokierten nicht initialisierten Speicher
val - der als Kopierkonstruktor-Argument zu verwendende Wert
args... - die zu verwendenden Konstruktorargumente

Rückgabewert

(keine)

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 402 C++98 falls T :: operator new existiert, könnte das Programm fehlerhaft sein verwendet globalen Ersetzungs-new stattdessen

Siehe auch

[static]
Konstruiert ein Objekt im allozierten Speicher
(Funktions-Template)
Erstellt ein Objekt an einer gegebenen Adresse
(Funktions-Template)
Allokierungsfunktionen
(Funktion)