cpp/memory/allocator/allocate

Allocates bytes of uninitialized storage by calling , but it is unspecified when and how this function is called. The pointer may be used to provide locality of reference: the allocator, if supported by the implementation, will attempt to allocate the new memory block as close as possible to.

Then, this function creates an array of type in the storage and starts its lifetime, but does not start lifetime of any of its elements.

Use of this function is ill-formed if is an incomplete type.

Return value
Pointer to the first element of an array of objects of type  whose elements have not been constructed yet.

Exceptions
Throws std if allocation fails.