Namespaces
Variants

std::experimental::any:: operator=

From cppreference.net
any & operator = ( const any & rhs ) ;
(1) (라이브러리 fundamentals TS)
any & operator = ( any && rhs ) noexcept ;
(2) (라이브러리 fundamentals TS)
template < typename ValueType >
any & operator = ( ValueType && rhs ) ;
(3) (라이브러리 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 인 경우, 프로그램은 ill-formed입니다. 이 오버로드는 std:: decay_t < ValueType > any 와 동일한 타입이 아닌 경우에만 오버로드 해결에 참여합니다.

목차

템플릿 매개변수

ValueType - 포함된 값 타입
타입 요구사항
-
std::decay_t<ValueType> CopyConstructible 요구사항을 충족해야 합니다.

매개변수

rhs - 값을 할당할 대상 객체

반환값

* this

예외

1,3) bad_alloc 를 던지거나 포함된 타입의 생성자에 의해 던져진 예외를 던집니다. 예외가 발생하면 아무런 효과도 없습니다(강력한 예외 보장).

참고 항목

any 객체를 생성합니다
(public member function)