Namespaces
Variants

std::experimental:: any

From ja.cppreference.net
ヘッダーで定義 <experimental/any>
class any ;
(ライブラリ基盤 TS)

anyクラスは、あらゆる型の単一値を格納する型安全なコンテナを記述します。

1) anyクラスのオブジェクトは、コンストラクタ要件を満たすあらゆる型のインスタンスを格納するか、あるいは空であり、これはanyクラスオブジェクトの状態と呼ばれます。格納されたインスタンスは包含オブジェクトと呼ばれます。両方とも空である場合、または両方とも空でなく包含オブジェクトが等価である場合、二つの状態は等価です。
2) 非メンバー関数 any_cast は、格納されたオブジェクトへの型安全なアクセスを提供します。

実装では、小さなオブジェクトに対する動的メモリ割り当てを避けることが推奨されますが、このような最適化は std::is_nothrow_move_constructible が true を返す型に対してのみ適用できます。

目次

メンバー関数

anyオブジェクトを構築する
(public member function)
anyオブジェクトを代入する
(public member function)
anyオブジェクトを破棄する
(public member function)
Modifiers
格納されたオブジェクトを破棄する
(public member function)
2つのanyオブジェクトを交換する
(public member function)
Observers
オブジェクトが値を保持しているかチェックする
(public member function)
格納されている値のtypeidを返す
(public member function)

非メンバー関数

2つの any インスタンスを交換
(関数)
含まれるオブジェクトへの型安全なアクセス
(関数テンプレート)

ヘルパークラス

(library fundamentals TS)
型不一致時に any_cast の値返却形式によって送出される例外
(クラス)