Diferencia entre revisiones de «Programación en C++/Excepciones»
Contenido eliminado Contenido añadido
Página nueva: Editores:<br> [mailto:oscarpalacios1@yahoo.com.mx Oscar E. Palacios] == Control de excepciones == <div style="background:#fffeee; text-align:justify; padding:40px"> <p>Una excepció... |
|||
Línea 5:
<div style="background:#fffeee; text-align:justify; padding:40px">
#Puesto que desde un bloque <b>try</b> pueden ser lanzados diferentes tipos de errores de excepción es que puede haber más de un <b>catch</b> para capturar a cada uno de los mismos.<br><br>▼
#Si desde un <b>try</b> se lanza una excepción y no existe el mecanismo <b>catch</b> para tratar dicha excepción el programa se interumpirá abruptamente despues de haber pasado por todos los catchs que se hayan definido y de no haber encontrado el adecuado.<br><br>▼
#Los tipo de errorres lazados pueden ser de un tipo primitivo tal como: <b>int</b>, <b>float</b>, <b>char</b>, etc. aunque normalmente las exepciones son lanzadas por alguna clase escrita por el usuario o por una clase de las que vienen incluidas con el compilador.<br><br>
▲tipos de errores de excepción es que puede haber más de un <b>catch</b> para capturar a cada uno de los mismos.
En el programa que se listará en seguida se muestra un ejemplo de como lanzar una excepción de tipo <b>int</b> dentro del bloque <b>try</b>, y como capturar el error por medio de <b>catch</b>.▼
<source lang=cpp>
▲excepción el programa se interumpirá abruptamente despues de haber pasado por todos los catchs que se hayan
#include <iostream>
using namespace std;
▲programa que se listará en seguida se muestra un ejemplo de como lanzar una excepción de tipo <b>int</b> dentro
▲<div class="code">// Demostración: try, throw y catch
int main()
{
}
}
}</source>
Como ya hemos mencionado, los herrores pueden deberse a una multitud de situaciones muchas veces inesperadas, por tal motivo, en C++ existe una forma de manejar excepciones desconocidas y es buena idea que si usted esta escribiendo un controlador de errores incluya un <b>catch</b> para capturar errores inesperados. Por ejemplo, en el siguiente progama se escribe un <b>catch</b> que tratará de capturar cualquier error inesperado. Observe que la sintaxis para declarar un catch general es:<br>
<pre>catch(...) { bloque de imstrucciones }</pre>
<source lang=cpp>
#include <iostream>
using namespace std;
int main()
{
}
}
}</source>
<p class="parrafo">Si usted está usando una clase escrita por terceras personas o de las que se
incluyen con el compilador y desea utilizar el mecanismo <b>try</b>, deberá conocer el tipo de
|