std::experimental::propagate_const<T>:: operator=
From cppreference.net
<
cpp
|
experimental
|
propagate const
|
constexpr
propagate_const
&
operator
=
(
propagate_const
&&
p
)
=
default
;
|
(1) | (라이브러리 fundamentals TS v2) |
|
template
<
class
U
>
constexpr propagate_const & operator = ( propagate_const < U > && pu ) ; |
(2) | (라이브러리 fundamentals TS v2) |
|
template
<
class
U
>
constexpr propagate_const & operator = ( U && u ) ; |
(3) | (라이브러리 fundamentals TS v2) |
|
propagate_const
&
operator
=
(
const
propagate_const
&
)
=
delete
;
|
(4) | (라이브러리 fundamentals TS v2) |
t_
를 감싸진 포인터와 유사한 객체인 private 데이터 멤버로 지정합니다.
1)
명시적으로 기본화된 이동 할당 연산자로,
this
-
>
t_
를
p.
t_
에서 이동 할당합니다.
2)
std
::
move
(
pu.
t_
)
를
this
-
>
t_
에 할당합니다.
이 오버로드는
이 오버로드는
U
가
T
로 암시적으로 변환 가능한 경우에만 오버로드 해결에 참여합니다.
3)
std::
forward
<
U
>
(
u
)
를
this
-
>
t_
에 할당합니다.
이 오버로드는
이 오버로드는
U
가
T
로 암시적으로 변환 가능하고
std::
decay_t
<
U
>
가
propagate_const
의 특수화가 아닌 경우에만 오버로드 해결에 참여합니다.
4)
복사 할당 연산자가 명시적으로 삭제되었습니다.
propagate_const
는 복사할 수 없습니다.
매개변수
| p | - |
이동할 다른
propagate_const
객체
|
| pu | - |
다른 특수화의
propagate_const
객체에서 이동
|
| u | - | 포함된 포인터에 할당할 다른 객체 |
반환값
* this .