bsl::variant::variant

Create a variant object holding a copy of original's alternative using allocator.

Synopsis

Declared in <bslstl_variant.h>

template<class t_FIRST = t_HEAD>
requires BloombergLP::bslstl::
                Variant_IsCopyConstructibleAll<t_FIRST, t_TAIL...>::value
variant(
    std::allocator_arg_t allocatorArg,
    allocator_type allocator,
    variant const& original);

Description

Create a variant object holding the same alternative (if any) as the specified original object. If this variant is allocator-aware, the specified allocator is used to supply memory. If the original object is not valueless by exception`, the contained value is copy-constructed from the contained value of original. This constructor is deleted unless all alternatives are copy constructible.

Parameters

NameDescription
allocatorArgtag selecting the allocator-extended overload
allocatorallocator used to supply memory
originalvariant to copy