Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - johnf9896

#1
Ya he solucionado el problema.

Tenía la idea de que lo que causaba ese problema era una opción que se pasaba al compilador.

Así que busqué en la página gcc.gnu.org la lista de todas las opciones que se podían pasar y leyendo encontré que si se quería pasar excepciones a travez de varias bibliotecas compartidas (dlls)  no debía usar en el linker la opción -static-libgcc ni -static-libstdc++ porque éstas bloqueaban las excepciones.

Así que solo quité las opciones del linker y listo asunto solucionado.

Gracias invancea96 por las respuestas.
#2
Me refiero a que si creo un nuevo .cpp y lo compilo con ese código, el código funciona pero pongo ese código en mi proyecto y lo compilo el programa no atrapa las excepciones y se crashea
#3
En un .cpp aparte sí pero en mi programa no
#4
Estoy desarrollando un juego, bien una biblioteca para hacer juegos basada en SFML y un juego basado en esa biblioteca.

El problema es que cuando el programa lanza una excepción el programa se crashea aunque una bloques try con catchs que

pueden atrapar la excepción.

Incluso si hago esto
Código (cpp) [Seleccionar]

try{
throw std::runtime_error("Error");
}
catch(std::exception &ex){

}


o esto
Código (cpp) [Seleccionar]

try{
throw std::exception();
}
catch(...){
}


el programa se crashea.

No entiendo porque sucede esto. Además, esto solo pasa en mi programa, cuando escribo los ejemplos de arriba en un simple

archivo .cpp y lo compilo, el programa atrapa las excepciones normalmente como de be ser.

Estoy usando Code::Blocks y Netbeans para escribir la biblioteca y el programa. Tengo proyectos en ambos IDEs.
Yo uso el compilador MinGW versión 4.8.1

Espero que alguien tenga alguna idea de porqué esto sucede y tenga alguna solución al problema.

Gracias por leer y responder.
#5
Y como hago en CodeBlocks, porfa si alguien sabe