Namespaces
Variants

C++ named requirements: MoveAssignable (since C++11)

From cppreference.net
C++ named requirements

해당 타입의 인스턴스가 rvalue 인수로부터 할당될 수 있음을 지정합니다.

요구사항

타입 T 가 다음 조건을 만족하면 MoveAssignable 을 만족합니다

주어진

다음 표현식들은 유효해야 하며 지정된 효과를 가져야 합니다.

Expression Return type Return value Post-conditions
t = rv T& t t rv 가 동일한 객체를 참조하지 않는 경우, t 의 값은 할당 전 rv 의 값과 동일합니다.

rv 의 새로운 값은 지정되지 않습니다.

참고 사항

이 타입 요구 사항을 충족하기 위해 타입이 move assignment operator 를 구현할 필요는 없습니다: 매개변수를 값으로 받거나 const Type& 로 받는 copy assignment operator 는 rvalue 인자에 바인딩됩니다.

만약 MoveAssignable 클래스가 이동 할당 연산자를 구현한다면, 할당 후 rv 의 값이 지정되지 않는다는 사실을 활용하기 위해 이동 의미론 도 구현할 수 있습니다.

참고 항목

타입이 이동 대입 연산자를 가지는지 확인합니다
(클래스 템플릿)
타입이 다른 타입으로부터 대입 가능함을 명시합니다
(컨셉)