std::allocator_traits<Alloc>::allocate
Defined in header <memory> | ||
|---|---|---|
| (1) | ||
static pointer allocate( Alloc& a, size_type n ); | (since C++11) (until C++20) | |
[[nodiscard]] static pointer allocate( Alloc& a, size_type n ); | (since C++20) | |
| (2) | ||
static pointer allocate( Alloc& a, size_type n,
const_void_pointer hint );
| (since C++11) (until C++20) | |
[[nodiscard]] static pointer allocate( Alloc& a, size_type n,
const_void_pointer hint );
| (since C++20) |
Uses the allocator a to allocate n*sizeof(Alloc::value_type) bytes of uninitialized storage.
1) Calls
a.allocate(n)
2) Additionally passes memory locality hint
hint. Calls a.allocate(n, hint) if possible. If not possible (e.g. a has no two-argument member function allocate()), calls a.allocate(n)
Parameters
| a | - | allocator to use |
| n | - | the number of objects to allocate storage for |
| hint | - | pointer to a nearby memory location |
Return value
The pointer returned by the call to a.allocate(n).
See also
| allocates uninitialized storage (public member function of std::allocator<T>) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/memory/allocator_traits/allocate