std::nullopt_t
Defined in header <optional>
|
||
struct nullopt_t; |
(since C++17) | |
std::nullopt_t
is an empty class type used to indicate optional
type with uninitialized state. In particular, std::optional has a constructor with nullopt_t
as a single argument, which creates an optional that does not contain a value.
std::nullopt_t
must be a non-aggregate LiteralType and cannot have a default constructor or an initializer-list constructor.
It must have a constexpr
constructor that takes some implementation-defined literal type.
Notes
The constraints on nullopt_t
's constructors exist to support both op = {}; and op = nullopt; as the syntax for disengaging an optional object.
A possible implementation of this class is
struct nullopt_t { explicit constexpr nullopt_t(int) {} };
See also
(C++17) |
an object of type nullopt_t (constant) |