table of contents
std::uninitialized_construct_using_allocator(3) | C++ Standard Libary | 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 (since
C++20)
Alloc& 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)
2022.07.31 | http://cppreference.com |