4
我有一个丑陋的问题,并希望任何帮助!在Windows上我的程序崩溃异常被抛出任何时候都有,例如:异常导致崩溃(QT SDK 1.2.1 - Qt4.8.1,MinGW的,窗户)
try
{
throw QString("lala");
}
catch(QString &s)
{
...
}
我使用Qt 4.8.1使用MinGW在QtCreator。我发现相当多的讨论,并试图
- 重建与-exceptions
- 加入QMAKE_CXXFLAGS + = -fexceptions
,但没有改变的源代码。 Windows告诉我该程序在我抛出错误的地方崩溃了。在Linux下一切正常。
不希望在所有讨论的优点和使用异常的缺点,我不知道是否是使用Qt或MinGW和我能做些什么来摆脱这个问题的问题。
我不能重现此(MINGW克++ 4.6.2,QT 4.8.2),也见我的[SSCCE](https://github.com/afester/StackOverflow/tree/master/QtException)。你能提供更多的背景吗?什么选项正确地传递给g ++? –
您使用的是MinGW的哪个版本?您是否构建了Qt库,还是使用预构建的包? –
我使用Qt与mingw tdm和异常工作。预编译的Qt版本和常规的mingw之间如何处理异常是不兼容的。 “TDM-GCC的MinGW的/ TDM版提供的异常处理你的程序两种不同的方法:SJLJ(的setjmp/longjmp的)和DW2(矮人-2)。” – Jay