Create an allocation and return a pointer to it.
pointer allocate(size_type n, allocator<void>::const_pointer hint=0);
A pointer to the initial element of an array of storage.
Allocate throw a bad_alloc exception if the storage cannot be obtained.