std::weak_ptr<T>:: expired
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Modifiers | ||||
| Observers | ||||
|
weak_ptr::expired
|
||||
|
(C++26)
|
||||
|
(C++26)
|
||||
| Non-member functions | ||||
| Helper classes | ||||
|
(C++20)
|
||||
| Deduction guides (C++17) |
|
bool
expired
(
)
const
noexcept
;
|
(desde C++11) | |
Equivalente a use_count ( ) == 0 . El destructor del objeto gestionado puede no haber sido llamado aún, pero la destrucción de este objeto es inminente (o puede haber ocurrido ya).
Contenidos |
Parámetros
(ninguno)
Valor de retorno
true si el objeto gestionado ya ha sido eliminado, false en caso contrario.
Notas
Si el objeto administrado es compartido entre hilos, solo tiene sentido cuando
expired()
devuelve true.
Ejemplo
Demuestra cómo se utiliza
expired
para verificar la validez del puntero.
#include <iostream> #include <memory> std::weak_ptr<int> gw; void f() { if (!gw.expired()) std::cout << "gw is valid\n"; else std::cout << "gw is expired\n"; } int main() { { auto sp = std::make_shared<int>(42); gw = sp; f(); } f(); }
Salida:
gw is valid gw is expired
Véase también
crea un
shared_ptr
que gestiona el objeto referenciado
(función miembro pública) |
|
devuelve el número de objetos
shared_ptr
que gestionan el objeto
(función miembro pública) |