名前空間
変種
操作

std::experimental::any::operator=

From cppreference.com
< cpp‎ | experimental‎ | any
 
 
 
 
 
any& operator=( const any& rhs );
(1) (Library Fundamentals TS)
any& operator=( any&& rhs ) noexcept;
(2) (Library Fundamentals TS)
template< typename ValueType >
    any& operator=( ValueType&& rhs );
(3) (Library Fundamentals TS)

格納されている値に内容を代入します。

1) rhs の状態をコピーして代入します。あたかも any(rhs).swap(*this) のかのように動作します。
2) rhs の状態を移動して代入します。あたかも any(std::move(rhs)).swap(*this) のかのように動作します。代入後、rhs は有効ですが未指定の状態になります。
3) rhs の型と値を代入します。あたかも any(std::forward<ValueType>(rhs)).swap(*this) のかのように動作します。std::is_copy_constructible<std::decay_t<ValueType>>::valuefalse の場合、プログラムは ill-formed (不正な形式) になります。このオーバーロードは、std::decay_t<ValueType>any と同じ型でない場合にのみ、オーバーロード解決に参加します。

目次

[編集] テンプレートパラメータ

ValueType - 格納される値の型
型要件
-
std::decay_t<ValueType>CopyConstructibleの要件を満たす必要があります。

[編集] パラメータ

rhs - 代入する格納値を持つオブジェクト

[編集] 戻り値

*this

[編集] 例外

1,3) bad_alloc または格納されている型のコンストラクタによってスローされる例外をスローします。例外がスローされた場合、効果はありません (強力な例外保証)。

[編集] 関連項目

any オブジェクトを構築する
(public member function) [編集]
English 日本語 中文(简体) 中文(繁體)