std::make_obj_using_allocator

From cppreference.com
< cpp‎ | memory
 
 
Utilities library
General utilities
Date and time
Function objects
Formatting library (C++20)
(C++11)
Relational operators (deprecated in C++20)
Integer comparison functions
(C++20)(C++20)(C++20)   
(C++20)
Swap and type operations
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
Common vocabulary types
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
Elementary string conversions
(C++17)
(C++17)
 
Dynamic memory management
Smart pointers
(C++11)
(C++11)
(C++11)
(until C++17)
(C++11)
(C++23)
Allocators
make_obj_using_allocator
(C++20)
Memory resources
Uninitialized storage
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Garbage collection support
(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)
Miscellaneous
(C++20)
(C++11)
(C++11)
 
Defined in header <memory>
template< class T, class Alloc, class... Args >
constexpr T make_obj_using_allocator( const Alloc& alloc, Args&&... args );
(since C++20)

Creates an object of the given type T by means of uses-allocator construction

Equivalent to

Parameters

alloc - the allocator to use.
args - the arguments to pass to T's constructor

Return value

The newly-created object of type T

Exceptions

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

Example

See also

prepares the argument list matching the flavor of uses-allocator construction required by the given type
(function template)
creates an object of the given type at specified memory location by means of uses-allocator construction
(function template)