Return a shared_ptr managing a newly created object.

Synopsis

Declared in <bslstl_sharedptr.h>

template<
    class ARRAY_TYPE,
    class ALLOC>
bsl::shared_ptr<ARRAY_TYPE>
allocate_shared(
    ALLOC* basicAllocator,
    remove_extent<ARRAY_TYPE>::type const& value)
requires is_bounded_array<ARRAY_TYPE>::value;

Description

Return a shared_ptr object referring to and managing a new ARRAY_TYPE object, where ARRAY_TYPE is a bounded array. The specified basicAllocator will be used to supply a single contiguous region of memory holding the returned shared pointer's internal representation and the new ARRAY_TYPE object, and each element in the array is constructed from the specified value. If basicAllocator is 0, then the default allocator will be used instead.

Return Value

shared pointer managing a newly created object

Parameters

Name

Description

basicAllocator

allocator used to supply memory

value

value used to initialize each array element

Created with MrDocs