C/Visual C - Try catch(...)

 
Vista:

Try catch(...)

Publicado por VoidPointer (180 intervenciones) el 18/08/2004 14:17:11
Como se Usa el Try, por lo que vi siempre me tira error en una ecepcion,
pero , no hay forma de que trate de hacer algo y ante el error no tira la ecepcion , por que si hay una, este me da el error y luego executa lo que yo le dije que haga en caso de que no pueda, o esa es solo su utilidad???????
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Try catch(...)

Publicado por Carlos (43 intervenciones) el 18/08/2004 16:09:43
prueba:
try
{
// codigo a ejecutar
}
catch ( CDaoException *e)
{
// codigo a ejecutar en caso de error
AfxMessageBox(e->m_pErrorInfo->m_strDescription , ........,.........);
}
Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Try catch(...)

Publicado por Nicolas (183 intervenciones) el 18/08/2004 18:21:51
Hola!!!!!!!!!!!!!!!

Si haces catch(...) agarra cualquier excepcion

Salu2!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Try catch(...)

Publicado por VoidPointer (180 intervenciones) el 19/08/2004 13:46:31
Pero por ejemplo, Lei un ejemplo y lo que hacia es una divion por cero y cunado cunado lo ejecute me tiro la ecepcion y luego hace lo que dice despues del catch() yo lo que no quiero que tire la primera ecepcion , si es que es posible, por que por jemeplo una funcion como StrToInt tendria que devolver solo un codigo de error como en C/C++ viejito que era atoi , pero este no, directamente me tira una ecepcion.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Try catch(...)

Publicado por chuidiang (677 intervenciones) el 19/08/2004 17:26:48
try-catch es una forma de capturar errores, no de evitar que se produzcan.
No hay diferencia entre poner try-catch o liarse a poner if para ver errores. El objetivo en ambos casos es el mismo, detectar el error y sacar un mensaje de error adecuado o actuar en consecuencia.

try-catch tienes dos ventajas sobre los if o los códigos de error.

- La primera es que separa los resultados de los errores. Por ejemplo, es habitual en C hacer que una función devuelva -1 si se produce error. ¿Qué pasa si el -1 es un resultado válido?. Haciendo que salten excepciones, el return de la función devuelve resultados y la excepción salta en caso de error. try-catch es mas "elegante".

- try-catch permite ejecutar un bloque grande de excepciones, capturando el error en cualquiera de ellas. Si lo haces con if, deberías ir metiendo un if en cada llamada. Al programar es mas comodo

try {
funcion1();
funcion2();
...
funcionn();
} catch ...

que

if (funcion1() == -1)
{
printf ("error");
return
}
if (funcion2() == -1)
{
printf ("error");
return;
}
...

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Try catch(...)

Publicado por VoidPointer (180 intervenciones) el 20/08/2004 13:20:13
Gracias por Aclarar mis Dudas!

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 5 puestos en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

RE:Try catch(...)

Publicado por zzzz (318 intervenciones) el 25/08/2004 02:46:56
hola! cuando usas el try y catch lo que haces es que cuando ocurra un error tu le dices al programa que es lo que quieres que haga, y si ejecutas ese programa desde builder o el compilador que uses el programa te va a mostrar el mensaje de error del compilador y luego va a hacer lo que tu le indicaste, pero una vez que abres el archivo.exe directamente sin ejecutarlo desde tu compilador no muestra el mensaje de error del compilador sino el mensaje que tu le hayas puesto, o las instrucciones que le pusiste.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar