En C++, las excepciones se utilizan para manejar situaciones excepcionales o de error que pueden ocurrir durante la ejecución de un programa. A diferencia de otros lenguajes como Python o Java, el manejo de excepciones en C++ se basa en tres palabras clave principales: try
, catch
y throw
.
Aquí te explico cómo funcionan y cómo puedes usarlas:
1. throw
- Se utiliza para “lanzar” una excepción.
- Puede lanzar cualquier tipo de dato, pero es más común usar clases derivadas de
std::exception
(la clase base estándar para excepciones en C++).
2. try
- Bloque que contiene código que puede generar excepciones.
- Si ocurre una excepción dentro de un bloque
try
, el flujo del programa se desvía a un bloquecatch
correspondiente.
3. catch
- Bloque que “atrapa” la excepción lanzada.
- Puede haber múltiples bloques
catch
para manejar diferentes tipos de excepciones. - Cada bloque
catch
especifica el tipo de excepción que puede manejar.
Ejemplo Básico
#include <iostream>
#include <stdexcept> // Para std::runtime_error
int main() {
try {
// Supongamos que algo puede ir mal aquí
throw std::runtime_error("Ocurrió un error");
} catch (const std::runtime_error& e) {
std::cerr << "Se capturó una excepción: " << e.what() << std::endl;
} catch (...) {
// Captura cualquier otra excepción
std::cerr << "Se capturó una excepción desconocida" << std::endl;
}
return 0;
}
En este ejemplo, se lanza una excepción de tipo std::runtime_error
, la cual es capturada por el primer bloque catch
. El mensaje de error se imprime en la consola.
Consejos para el Manejo de Excepciones
- Usar Excepciones para Casos Excepcionales: Las excepciones son para situaciones que no deberían ocurrir durante el funcionamiento normal del programa.
- No Usar Excepciones para Control de Flujo: No son un sustituto de una lógica de control de flujo regular (como
if
/else
). - Liberar Recursos: Asegúrate de liberar recursos (memoria, archivos abiertos, etc.) cuando una excepción es lanzada. Para esto, C++ ofrece los RAII (Resource Acquisition Is Initialization) y los smart pointers.
- Excepciones Personalizadas: Puedes definir tus propias clases de excepciones heredando de
std::exception
y sobreescribiendo el métodowhat()
.
El manejo de excepciones en C++ es una herramienta poderosa para escribir código más seguro y fácil de mantener, especialmente en programas complejos donde los errores deben manejarse de manera elegante.

¿QUÉ TE HA PARECIDO EL ARTÍCULO? Danos tu opinión al final de la página.
Deja tu comentario y ayúdanos a crecer.
¡SÍGUENOS EN TUS REDES FAVORITAS!
AYUDANOS A CRECER Y QUE LLEGUEMOS A TODAS LAS PERSONAS QUE NOS NECESITANA. SÍGUENOS EN TUS REDES.
Entra AQUÍ y elíge donde seguirnos.

NUESTRAS ÚLTIMAS PUBLICACIONES
- 🛠️ Cómo crear un plugin en WordPress desde cero (Guía paso a paso)
- 📶 Cómo Crear un Hotspot WiFi en Windows 10 (Paso a Paso)
- 🕵️♂️ Aprende a usar Wireshark: Filtrar tráfico por IP, URL, MAC y más
- 🧩 Subconsultas, HAVING y Subconsultas Binomiales en MySQL: Guía Completa
- 🔍 Principales Comandos y Subconsultas en MySQL: SUM, AVG, MOD y Más
- 26 de marzo CERRADOS.
- ¡Aprende y Refuerza tus Consultas SQL en la Base de Datos de Alumnos!
- La Academia SanRoque lanza su primer podcast de historia: Un viaje a la España medieval
- OFERTA ESPECIAL PARA EL DÍA DEL PADRE.
ELIGE TU RED FAVORITA Y SÍGUENOS.
AYUDANOS A CRECER Y A LLEGAR A TODAS LAS PERSONAS QUE NOS NECESITAN.
Contenido restringido
Comments are closed