Namespaces
Variants
Actions

std::uninitialized_construct_using_allocator

From cppreference.com
< cpp‎ | memory
 
 
Memory management library
(exposition only*)
Allocators
uninitialized_construct_using_allocator
(C++20)
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Memory resources
Uninitialized storage (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)
 
Defined in header <memory>
template< class T, class Alloc, class... Args >

constexpr T* uninitialized_construct_using_allocator( T* p,
                                                      const Alloc& alloc,

                                                      Args&&... args );
(since C++20)

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)...);
    },