23 General utilities library [utilities]

23.6 Optional objects [optional]

23.6.4 No-value state indicator [optional.nullopt]

struct nullopt_t{see below}; inline constexpr nullopt_t nullopt(unspecified);

Структура nullopt_­t - это пустой тип структуры, используемый как уникальный тип для обозначения состояния отсутствия значения для optional объектов. В частности, optional<T> имеет конструктор с nullopt_­t одним аргументом; это указывает на то, что должен быть создан необязательный объект, не содержащий значения.

Тип nullopt_­t не должен иметь конструктора по умолчанию или конструктора списка инициализаторов и не должен быть агрегатом.