EVAP2

<Exception>
Funciones de exception:
Make_exception_pt:
Devuelve un “exception_ptrobjeto” que apunta a una copia del correo . El comportamiento de esta plantilla de función es equivalente a:


Exception_ptr es un compartido  tipo puntero inteligente: garantiza la excepción en punta mientras siga siendo válida durante el tiempo que al menos un “exception_ptr” apunta a la misma. Ver “exception_ptr” para más “info”. Esta función emite ninguna excepción, pero si la función se implementa como devolver un puntero a una copia de la excepción actualmente manejado, puede devolver un puntero a una excepción diferente si no logra asignar almacenamiento (bad_alloc) O si el proceso de copia falla (devuelve la excepción lanzada o “bad_exception”. Si es posible; o algún otro valor especificado, de lo contrario).



Rethrow_exception:
Lanza el objeto de excepción apuntada por “p”.



Rethrow_if_nested:
Lanza la excepción añadida en correo, si (y sólo si) “e” está públicamente y sin ambigüedades derivada “denested_exception”. De lo contrario, la función no hace nada (y no lanza). Si la excepción añadida es nula, las llamadas de función terminaran en su lugar.



Set_terminate:
F se establece como la función de controlador de terminar.
Una función de controlador de terminar es una función llamada automáticamente cuando el proceso de control de excepciones tiene que ser abandonado por alguna razón. Esto ocurre cuando no hay controlador de tipo “catch" puede encontrarse una excepción lanzada, o por alguna otra circunstancia excepcional que hace imposible continuar el proceso de control de excepciones.
Antes de esta función es llamada por el programa por primera vez, el comportamiento predeterminado es llamar a abortar.
Un programa puede explícitamente llamar a la corriente y terminar la función controladora llamando al terminar.


Set_unexpected:
F se establece como la función de controlador inesperado.
La función de controlador inesperado es una función llamada automáticamente cuando una función produce una excepción que no está en su dinámica-excepción-especificación (es decir, en su especificador de tiro).
La función de controlador inesperado puede manejar la excepción y terminará por ”teminating“(llamada terminar o algún otro método, como salida o interrupción) o lanzando una excepción (incluso para la misma excepción otra vez). Si la excepción lanzada (o detectar) no está en la función dinámica-excepción-especificación pero es “bad_exception”, un “bad_exception“ es lanzado. De lo contrario, si no es la excepción nueva en la dinámica-excepción-especificación tampoco, terminar se llama automáticamente.
Antes de esta función es llamada por el programa por primera vez, el comportamiento predeterminado es llamar a terminar.


Terminate:
El actual controlador de terminar las llamadas.
De forma predeterminada, las llamadas del controlador de terminar abortan. Pero este comportamiento puede ser redefinido por llamando al “set_terminate”.
Esta función se llama automáticamente cuando no hay controlador de tipo “catch” puede encontrarse una excepción lanzada, o por alguna otra circunstancia excepcional que hace imposible continuar el proceso de control de excepciones.
Esta función se proporciona para que el controlador determinar puede llamarse explícitamente por un programa que necesita para terminar anormalmente y funciona incluso si “set_terminate” no se ha utilizado para establecer un controlador personalizado terminado (llamando a abortar en este caso).


No hay comentarios.:

Publicar un comentario