Descripción
Es un puntero muy débil.
Declaración
A continuación se muestra la declaración de std :: bad_weak_ptr.
class bad_weak_ptr: public exception;
C ++ 11
class bad_weak_ptr: public exception;
Parámetros
ninguna
Valor devuelto
ninguna
Excepciones
No-throw guarantee - ningún miembro lanza excepciones.
Ejemplo
En el siguiente ejemplo para std :: bad_typeid.
#include <memory>
#include <iostream>
int main() {
std::shared_ptr<int> p1(new int(42));
std::weak_ptr<int> wp(p1);
p1.reset();
try {
std::shared_ptr<int> p2(wp);
} catch(const std::bad_weak_ptr& e) {
std::cout << e.what() << '\n';
}
}
La salida de muestra debería ser así:
bad_weak_ptr
excepción.htm