Namespaces
Variants

std::nullopt_t

ja.cppreference.net より
 
 
ユーティリティライブラリ
言語サポート
型サポート(基本型、RTTI)
ライブラリ機能テストマクロ (C++20)
プログラムユーティリティ
可変長引数関数
コルーチンサポート (C++20)
契約サポート (C++26)
三方比較
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

汎用ユーティリティ
関係演算子 (C++20で非推奨)
整数比較関数
(C++20)(C++20)(C++20)    
(C++20)
swap と 型操作
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
共通語彙型
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)



 
 
ヘッダ <optional>
struct nullopt_t;
(C++17 以上)

std::nullopt_t で定義されるこの空のクラス型は、 std::optional が値を保持していないことを示すために使用されます。

std::nullopt_t は非集成体の LiteralType であり、デフォルトコンストラクタや初期化子リストコンストラクタはありませんが、 実装定義のリテラル型を取る constexpr コンストラクタを持ちます。

注記

nullopt_tのコンストラクタに対する制約は、 op = { } ; と op = nullopt ; の両方の構文をオプショナルオブジェクトの無効化操作としてサポートするために存在します。

このクラスの可能な実装は以下の通りです。

struct nullopt_t {
    constexpr explicit nullopt_t(int) {}
};

関連項目

(C++17)
nullopt_t型のオブジェクト
(定数)