22 General utilities library [utilities]

22.6 Variants [variant]

22.6.1 In general [variant.general]

A variant object holds and manages the lifetime of a value.
If the variant holds a value, that value's type has to be one of the template argument types given to variant.
These template arguments are called alternatives.
In subclause [variant], GET denotes a set of exposition-only function templates ([variant.get]).