std::allocator_traits::construct
From cppreference.com
< cpp | memory | allocator traits
| Defined in header <memory>
|
||
| template< class T, class... Args >
static void construct( Alloc& a, T* p, Args&&... args ); |
(since C++11) | |
If possible, constructs an object of type T in allocated uninitialized storage pointed to by p, by calling
a.construct(p, std::forward<Args>(args)...)
If the above is not possible (e.g. a does not have the member function construct(),), then calls placement-new as
::new (static_cast<void*>(p)) T(std::forward<Args>(args)...)
Contents |
[edit] Parameters
| a | - | allocator to use for construction |
| args... | - | the constructor arguments to pass to a.construct() or to placement-new |
[edit] Return value
(none)
[edit] Notes
This function is used by the standard library containers when inserting, copying, or moving elements.
[edit] See also
| allocation functions (function) |
|
| constructs an object in allocated storage (public member function of std::allocator) |
|