[#BloombergLP-bslstl-Optional_Base-05-2constructor-08d] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslstl.adoc[bslstl]::xref:BloombergLP/bslstl/Optional_Base-05.adoc[Optional_Base]::Optional_Base :relfileprefix: ../../../ :mrdocs: Create a disengaged `Optional_Base` object if the specified `original` object is disengaged, and an `Optional_Base` object with the value of `original.value()` otherwise. This is a special case constructor where `t_ANY_TYPE` is a non‐const version of `t_TYPE` and we use the allocator from `original` to supply memory. `original` is left in a valid but unspecified state. == Synopsis Declared in `<bslstl_optional.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_ANY_TYPE> Optional_Base( xref:BloombergLP/bslstl/Optional_MoveConstructFromOtherOptional.adoc[BloombergLP::bslstl::Optional_MoveConstructFromOtherOptional], xref:BloombergLP/bslmf/MovableRef_Deduced.adoc[BloombergLP::bslmf::MovableRef_Deduced<Optional_Base<t_ANY_TYPE>>] original); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#