bsl::variant::variant

Create a variant object whose contained value is initialized from t using allocator.

Synopsis

Declared in <bslstl_variant.h>

template<class t_TYPE>
variant(
    std::allocator_arg_t allocatorArg,
    allocator_type allocator,
    t_TYPE&& t);

Description

Create a variant object whose contained value is direct-initialized from the specified t. The alternative selected is the best match among all alternatives for which the expression t_ALT_TYPE x[]= {std::forward<t_TYPE>(t)}; is well formed, and this constructor participates in overload resolution only if there is a unique best matching alternative and that alternative is constructible from t. If this variant is allocator-aware, the specified allocator is used to supply memory. Note that the cv-qualification of an alternative type does not affect how well the alternative type matches an argument type.

Parameters

NameDescription
allocatorArgtag selecting the allocator-extended overload
allocatorallocator used to supply memory
tvalue used to initialize the selected alternative