std:: indirectly_copyable_storable
|
헤더 파일에 정의됨
<iterator>
|
||
|
template
<
class
In,
class
Out
>
concept indirectly_copyable_storable
=
|
(C++20부터) | |
indirectly_copyable_storable
개념은
indirectly_readable
타입과
indirectly_writable
타입 간의 관계를 명시합니다.
indirectly_copyable
에 추가로, 이 개념은
indirectly_readable
타입으로부터의 복사가 중간 객체를 통해 수행될 수 있음을 명시합니다.
의미론적 요구사항
In
및
Out
모델
std
::
indirectly_copyable_storable
<
In, Out
>
는 역참조 가능한 값
i
가
In
타입으로 주어졌을 때만:
-
정의
std::
iter_value_t
<
In
>
obj
(
*
i
)
;
이후,
obj는 이전에 * i 로 표시된 값과 동일하며, -
만약
std::
iter_reference_t
<
In
>
가 rvalue 참조 타입인 경우,
*
i
는
obj의 초기화 이후 유효하지만 지정되지 않은 상태가 됩니다.
동등성 보존
표준 라이브러리 개념의 requires expressions 에 선언된 표현식들은 equality-preserving 해야 합니다(다르게 명시된 경우를 제외하고).
참고 항목
|
(C++20)
|
indirectly_readable
타입에서
indirectly_writable
타입으로 값이 복사될 수 있음을 명시
(concept) |
|
(C++20)
|
indirectly_readable
타입에서
indirectly_writable
타입으로 값이 이동될 수 있으며, 중간 객체를 통해 이동이 수행될 수 있음을 명시
(concept) |