Actualmente arrojamos solo sobre fallas irrecuperables resultantes de una fuente externa (como datos, por ejemplo) y tenemos un único intento de capturar toda la ejecución.¿Cómo deberían usarse las excepciones en C++ moderno?
Cuándo/Por qué/¿Cómo deberían usarse las excepciones en C++ moderno?
¿C++ 11 cambia la respuesta a la pregunta anterior?
Las excepciones deben ser utilizados para condiciones excepcionales, situaciones que necesitan ser aprobada la pila de llamadas porque no se puede manejar con eficacia ellos en el nivel en que ocurrieron. –
"No me gusta la sintaxis y la complejidad agregada de las excepciones", en lugar de verificar los códigos de error cada vez que llamas a una función. Hay razones para desagradar las excepciones, pero no creo que este sea uno de ellos. –
Las excepciones son excelentes cuando se usan correctamente. Los usamos para cosas como "problemas de configuración", es decir, comenzar un proceso con una mala configuración hará que try/catch in main capture la mala línea de configuración. También los utilizamos extensamente para "errores excepcionales", es decir, si encontramos el formato incorrecto en un flujo de datos conocido, estamos leyendo que es una excepción que queda atrapada en el registro de alto nivel "messge malo" –