22 General utilities library [utilities]

22.5 Optional objects [optional]

22.5.5 No-value state indicator [optional.nullopt]

struct nullopt_t{see below}; inline constexpr nullopt_t nullopt(unspecified);
The struct nullopt_t is an empty class type used as a unique type to indicate the state of not containing a value for optional objects.
In particular, optional<T> has a constructor with nullopt_t as a single argument; this indicates that an optional object not containing a value shall be constructed.
Type nullopt_t does not have a default constructor or an initializer-list constructor, and is not an aggregate.
nullopt_t models copyable and three_way_comparable<strong_ordering>.