Control de errores
Contenido |
[editar]Control de excepciones
El archivo de encabezado <exception>
proporciona varias clases y funciones relacionadas con control de excepciones en un programa de C++.
Definido en el archivo de encabezado <exception> | |
Clase base para excepciones producidas por los componentes de la biblioteca estándar. (clase) | |
Captura y almacenamiento de objetos de excepción | |
Comprueba si el control de excepciones se encuentra actualmente en curso. (función) | |
(C++11) | Tipo de puntero compartido para la manipulación de objetos de excepción. (typedef) |
(C++11) | Crea un std::exception_ptr de un objeto de excepción. (plantilla de función) |
(C++11) | Captura la excepción actual en un std::exception_ptr (función) |
(C++11) | Produce la excepción de un std::exception_ptr. (función) |
(C++11) | Un tipo mixin para capturar y almacenar las excepciones en curso. (clase) |
(C++11) | Lanza su argumento mezclado con std::nested_exception. (plantilla de función) |
(C++11) | Produce la excepción de una std::nested_exception (plantilla de función) |
Control de fallas en el control de excepciones | |
Definido en el archivo de encabezado <exception> | |
Función llamada cuando falla el control de excepciones. (función) | |
El tipo de la función llamada por std::terminate. (typedef) | |
(C++11) | Obtiene el controlador de terminación terminate_handler) actual. (función) |
Cambia la función a ser llamada por std::terminate. (función) | |
Excepción que se produce cuando la especificación de excepción dinámica es violada, si es posible. (clase) | |
Violaciones de las especificaciones de excepción (eliminadas en C++17) | |
(en desuso) | Función llamada cuando la especificación de excepciones dinámica es violada. (función) |
(en desuso) | El tipo de la función llamada por std::unexpected. (typedef) |
(C++11)(en desuso) | Obtiene el controlador no esperado (unexpected_handler) actual. (función) |
(en desuso) | Cambia la función a ser llamada por std::unexpected. (función) |
[editar]Categorías de excepciones
Varias clases convenientes se predefinen en el archivo de encabezado <stdexcept>
para reportar condiciones de error particulares. Estas clases pueden dividirse en dos categorías: errores de lógica y errores en tiempo de ejecución. Los errores de lógica son una consecuencia de lógica defectuosa dentro del programa y pueden prevenirse. Los errores en tiempo de ejecución se deben a eventos más allá del ámbito del programa y no pueden predecirse fácilmente.
Definido en el archivo de encabezado <stdexcept> | |
Clase de excepción para indicar violaciones a las precondiciones lógicas o invariantes de la clase. (clase) | |
Clase de excepción para argumentos inválidos. (clase) | |
Clase de excepción para reportar errores de dominio. (clase) | |
Clase de excepción para reportar intentos para exceder el máximo tamaño permitido. (clase) | |
Clase de excepción para reportar argumentos fuera de un rango esperado. (clase) | |
Clase de excepción para indicar condiciones solamente detectables en tiempo de ejecución. (clase) | |
Clase de excepción para reportar errores de rango en cálculos internos. (clase) | |
Clase de excepción para reportar arithmetic overflows. (clase) | |
Clase de excepción para reportar subdesbordamientos aritméticos. (clase) | |
(TM TS) | Clase de excepción para cancelar transacciones atómicas. (plantilla de clase) |
[editar]Números de errores
Definido en el archivo de encabezado <cerrno> | |
Macro que se expande para la variable de número de error local al hilo y compatible con POSIX. (variables macro) | |
Macros para las condiciones de error estándar compatibles con POSIX. (constante de macro) |
[editar]Aserciones
Aserciones para ayudar a implementar la comprobación de las precondiciones en programas.
Definido en el archivo de encabezado <cassert> | |
Aborta el programa si la condición especificada por el usuario no es verdadera (true). Puede ser desactivada para las versiones de lanzamiento. (macro de función) |
[editar]Error del sistema
El archivo de encabezado <system_error>
define tipos y funciones usadas para reportar condiciones de error que se originan en el sistema operativo, flujos de E/S, std::future, u otras APIs de bajo nivel.
Definido en el archivo de encabezado <system_error> | |
(C++11) | Clase base para las categorías de error. (clase) |
(C++11) | Identifica la categoría de error genérica. (función) |
(C++11) | Identifica la categoría de error del sistema operativo. (función) |
(C++11) | Mantiene un código de error portátil. (clase) |
(C++11) | La enumeración std::error_condition que lista todas las constantes de macros <cerrno> estándar. (clase) |
(C++11) | Mantiene un código de error dependiente de la plataforma. (clase) |
(C++11) | Clase de excepción utilizada para reportar condiciones que tienen un código de error (error_code ). (clase) |
[editar]Véase también
Declaración static_assert | Lleva a cabo comprobación de aserciones en tiempo de compilación. (desde C++11) |
Documentación de C para Control de errores |