std::weak_ptr<T>:: operator=
From es.cppreference.net
|
weak_ptr
&
operator
=
(
const
weak_ptr
&
r
)
noexcept
;
|
(1) | (desde C++11) |
|
template
<
class
Y
>
weak_ptr & operator = ( const weak_ptr < Y > & r ) noexcept ; |
(2) | (desde C++11) |
|
template
<
class
Y
>
weak_ptr & operator = ( const shared_ptr < Y > & r ) noexcept ; |
(3) | (desde C++11) |
|
weak_ptr
&
operator
=
(
weak_ptr
&&
r
)
noexcept
;
|
(4) | (desde C++11) |
|
template
<
class
Y
>
weak_ptr & operator = ( weak_ptr < Y > && r ) noexcept ; |
(5) | (desde C++11) |
Reemplaza el objeto gestionado por el gestionado por r . El objeto es compartido con r . Si r no gestiona ningún objeto, * this tampoco gestiona ningún objeto.
1-3)
Equivalente a
std::
weak_ptr
<
T
>
(
r
)
.
swap
(
*
this
)
.
4,5)
Equivalente a
std::
weak_ptr
<
T
>
(
std
::
move
(
r
)
)
.
swap
(
*
this
)
.
Contenidos |
Parámetros
| r | - | puntero inteligente para compartir un objeto con |
Valor de retorno
* this
Notas
La implementación puede cumplir con los requisitos sin crear un objeto temporal
weak_ptr
.
Informes de defectos
Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares publicados anteriormente de C++.
| DR | Se aplica a | Comportamiento publicado | Comportamiento correcto |
|---|---|---|---|
| LWG 2315 | C++11 |
la semántica de movimiento no estaba habilitada para
weak_ptr
|
habilitada |
Véase también
crea un nuevo
weak_ptr
(función miembro pública) |
|
|
intercambia los objetos gestionados
(función miembro pública) |