Biblioteca de excepciones de C ++ - bad_exception

Descripción

Esta es una excepción lanzada por un controlador inesperado.

Declaración

A continuación se muestra la declaración para std :: bad_exception.

class bad_exception;

C ++ 11

class bad_exception;

Parámetros

ninguna

Valor devuelto

ninguna

Excepciones

No-throw guarantee - ningún miembro lanza excepciones.

Ejemplo

En el siguiente ejemplo para std :: bad_exception.

#include <iostream>
#include <exception>
#include <stdexcept>
 
void my_unexp() { throw; }
 
void test() throw(std::bad_exception) {
   throw std::runtime_error("test error");
}
 
int main() {
   std::set_unexpected(my_unexp);
   try {
      test();
   } catch(const std::bad_exception& e) {
      std::cerr << "Caught " << e.what() << '\n';
   }
}

La salida de muestra debería ser así:

Caught std::bad_exception
excepción.htm