Namespaces
Variants

std::experimental::any:: operator=

From cppreference.net
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 >> :: value равно false , программа является некорректной. Эта перегрузка участвует в разрешении перегрузки только если std:: decay_t < ValueType > не является тем же типом, что и any .

Содержание

Параметры шаблона

ValueType - тип содержащегося значения
Требования к типу
-
std::decay_t<ValueType> должен удовлетворять требованиям CopyConstructible .

Параметры

rhs - объект, чье содержащееся значение присваивается

Возвращаемое значение

* this

Исключения

1,3) Выбрасывает bad_alloc или любое исключение, выброшенное конструктором содержащегося типа. Если исключение выбрасывается, эффекты отсутствуют (гарантия строгой безопасности исключений).

Смотрите также

создает объект any
(публичная функция-член)