std::allocator::construct(3)

NAME
std::allocator::construct - std::allocator::construct

Synopsis
   Defined in header <memory>
   void construct( pointer p, const_reference val ); (1) (until C++11)
   template< class U, class... Args > (since C++11)
   void construct( U* p, Args&&... args ); (2) (deprecated in C++17)
                        (removed in C++20)
   Constructs an object of type T in allocated uninitialized storage pointed to by p,
   using global placement-new.
   1) Calls ::new((void*)p) T(val).
   2) Calls ::new((void*)p) U(std::forward<Args>(args)...).

Parameters
   p - pointer to allocated uninitialized storage
   val - the value to use as the copy constructor argument
   args... - the constructor arguments to use

Return value
   (none)
   Defect reports
   The following behavior-changing defect reports were applied retroactively to
   previously published C++ standards.
     DR Applied to Behavior as published Correct behavior
   LWG 402 C++98 if T::operator new exists, the uses global replacement-new
                      program might be ill-formed instead

See also
   construct constructs an object in the allocated storage
   [static] (function template)
   construct_at creates an object at a given address
   (C++20) (function template)
   operator new allocation functions
   operator new[] (function)