【发布时间】:2012-01-10 12:05:32
【问题描述】:
在我指定的项目 .pro 文件中:
QMAKE_CXXFLAGS += -fno-exceptions
但我可以在我的应用程序中抛出异常。对此有什么想法吗?
示例:这不应该有效,但它有效
#include <QApplication>
#include <QtDebug>
int main(int c, char**v)
{
QApplication app(c,v);
try
{
throw 1;
}
catch(int i)
{
}
return app.exec();
}
【问题讨论】:
-
Qt 库不使用异常。
-
有什么问题?问题是“为什么我的代码编译,我预计它会失败,因为我错误地尝试在我尝试使用 -fno-exceptions 编译的代码中抛出异常?”?或者是一个问题,“我如何正确地将我的异常使用代码与 Qt 链接起来?”? “对此有任何想法”对于 SO 来说过于宽泛,这里不是为了调查人们对给定文本的个人反应;-)
-
@smallB “我能够抛出异常”是指它们已正确调度(
catch正在工作,堆栈展开正在发生等),或者您能够编译并崩溃您的应用程序? -
@AzzA 是的,我可以使用它们