Diagnostics library
Contenidos |
Manejo de excepciones
El encabezado <exception> proporciona varias clases y funciones relacionadas con el manejo de excepciones en programas C++.
|
Definido en el encabezado
<exception>
|
|
|
clase base para las excepciones lanzadas por los componentes de la biblioteca estándar
(clase) |
|
Captura y almacenamiento de objetos de excepción |
|
|
(
removed in C++20*
)
(C++17)
|
verifica si el manejo de excepciones está actualmente en progreso
(función) |
|
(C++11)
|
tipo de puntero compartido para manejar objetos de excepción
(typedef) |
|
(C++11)
|
crea un
std::exception_ptr
a partir 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)
|
lanza la excepción desde un
std::exception_ptr
(función) |
|
(C++11)
|
un tipo mixin para capturar y almacenar excepciones actuales
(clase) |
|
(C++11)
|
lanza su argumento con
std::nested_exception
incorporado
(plantilla de función) |
|
(C++11)
|
lanza la excepción desde un
std::nested_exception
(plantilla de función) |
Manejo de fallos en el manejo de excepciones |
|
|
Definido en el encabezado
<exception>
|
|
|
función llamada cuando el manejo de excepciones falla
(función) |
|
|
el tipo de la función llamada por
std::terminate
(typedef) |
|
|
(C++11)
|
obtiene el terminate_handler actual
(función) |
|
cambia la función a ser llamada por
std::terminate
(función) |
|
|
excepción lanzada cuando
std::current_exception
falla al copiar el objeto de excepción
(clase) |
|
Manejo de violaciones de especificación de excepciones (hasta C++17) |
|
|
(deprecated in C++11)
(removed in C++17)
|
función llamada cuando se viola la especificación de excepción dinámica
(función) |
|
(obsoleto en C++11)
(eliminado en C++17)
|
el tipo de la función llamada por
std::unexpected
(typedef) |
|
(obsoleto en C++11)
(eliminado en C++17)
|
obtiene el actual
unexpected_handler
(función) |
|
(obsoleto en C++11)
(eliminado en C++17)
|
cambia la función a ser llamada por
std::unexpected
(función) |
Categorías de excepciones
En el encabezado
<stdexcept>
se predefinen varias clases de conveniencia para reportar condiciones de error particulares. Estas clases pueden dividirse en dos categorías: errores de
lógica
y errores de
tiempo de ejecución
. Los errores de lógica son consecuencia de una lógica defectuosa dentro del programa y pueden ser prevenibles. Los errores de tiempo de ejecución se deben a eventos fuera del alcance del programa y no pueden predecirse fácilmente.
|
Definido en el encabezado
<stdexcept>
|
|
|
clase de excepción para indicar violaciones de precondiciones lógicas o invariantes de clase
(clase) |
|
|
clase de excepción para reportar argumentos inválidos
(clase) |
|
|
clase de excepción para reportar errores de dominio
(clase) |
|
|
clase de excepción para reportar intentos de exceder el tamaño máximo permitido
(clase) |
|
|
clase de excepción para reportar argumentos fuera del rango esperado
(clase) |
|
|
clase de excepción para indicar condiciones solo 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 desbordamientos aritméticos
(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) |
Números de error
|
Definido en el encabezado
<cerrno>
|
|
|
macro que se expande a variable de número de error local al hilo compatible con POSIX
(macro variable) |
|
|
macros para condiciones de error estándar compatibles con POSIX
(macro constante) |
|
Error del sistema (desde C++11)
El encabezado
<system_error>
define tipos y funciones utilizados para reportar condiciones de error originadas desde el sistema operativo, E/S de flujos,
std::future
, u otras APIs de bajo nivel.
|
Definido en el encabezado
<system_error>
|
|
|
(C++11)
|
clase base para 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)
|
contiene un código de error portable
(clase) |
|
(C++11)
|
la enumeración
std::error_condition
que lista todas las constantes macro estándar de
<cerrno>
(clase) |
|
(C++11)
|
contiene un código de error dependiente de la plataforma
(clase) |
|
(C++11)
|
clase de excepción utilizada para reportar condiciones que tienen un error_code
(clase) |
Aserciones
Las aserciones ayudan a implementar la verificación de precondiciones en programas.
|
Definido en el encabezado
<cassert>
|
|
|
aborta el programa si la condición especificada por el usuario no es
true
. Puede deshabilitarse para builds de release.
(macro de función) |
|
Stacktrace (desde C++23)
|
Definido en el encabezado
<stacktrace>
|
|
|
(C++23)
|
representación de una evaluación en un stacktrace
(clase) |
|
(C++23)
|
representación aproximada de una secuencia de invocación compuesta por entradas de stacktrace
(plantilla de clase) |
Soporte de depuración (since C++26)
|
Definido en el encabezado
<debugging>
|
|
|
(C++26)
|
pausa el programa en ejecución cuando se llama
(función) |
|
(C++26)
|
llama a
std::breakpoint
si
std::is_debugger_present
retorna
true
(función) |
|
(C++26)
|
verifica si un programa se está ejecutando bajo el control de un depurador
(función) |
Véase también
static_assert
declaración
(C++11)
|
realiza verificación de aserciones en tiempo de compilación |
|
Documentación C
para
Manejo de errores
|
|