std::uninitialized_construct_using_allocator(3)

NAME
std::uninitialized_construct_using_allocator - std::uninitialized_construct_using_allocator

Synopsis
   Defined in header <memory>
   template< class T, class Alloc, class... Args >
   constexpr T* uninitialized_construct_using_allocator( T* p,
                        const Alloc& (since C++20)
   alloc,
                        Args&&... args
   );
   Creates an object of the given type T by means of uses-allocator construction at the
   uninitialized memory location indicated by p.
   Equivalent to
 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)...));

Parameters
   p - the memory location where the object will be placed
   alloc - the allocator to use
   args - the arguments to pass to T's constructor

Return value
   Pointer to the newly-created object of type T.

Exceptions
   May throw any exception thrown by the constructor of T, typically including
   std::bad_alloc.

Example
    This section is incomplete
    Reason: no example

See also
   uses_allocator checks if the specified type supports uses-allocator
   (C++11) construction
                        (class template)
   make_obj_using_allocator creates an object of the given type by means of
   (C++20) uses-allocator construction
                        (function template)

Category:
     * Todo no example