[#bsl-stack-05-2constructor-06] = xref:bsl.adoc[bsl]::xref:bsl/stack-05.adoc[stack]::stack :relfileprefix: ../../ :mrdocs: Create a stack having the value of the specified `original` (on entry) that uses `basicAllocator` to supply memory by using the allocator‐extended moved constructor of `CONTAINER`. `original` is left in a valid but unspecified state. Note that a `bslma::Allocator *` can be supplied for `basicAllocator` if the (template parameter) `ALLOCATOR` is `bsl::allocator` (the default). Also note that this method assumes that `CONTAINER` has a move constructor. Also note that if `CONTAINER::allocator_type` does not exist, this constructor may not be used. == Synopsis Declared in `<bslstl_stack.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class ALLOCATOR> stack( xref:BloombergLP/bslmf/MovableRef.adoc[BloombergLP::bslmf::MovableRef<stack>] original, ALLOCATOR const& basicAllocator, ALLOCATOR* = 0) requires bsl::uses_allocator<CONTAINER, ALLOCATOR>::value; ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#