Namespaces
Variants

std::experimental:: any

From 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 の値返却形式によって送出される例外
(クラス)