gpt4 book ai didi

c++ - 是否所有官方 Qt 二进制文件都使用 -no-exceptions 构建?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:38:50 25 4
gpt4 key购买 nike

如果我写

try {
throw std::exception("Exception");
} catch (std::exception& ex) {
qDebug("Game Over");
}

在我的主函数(或其他任何地方)中,我的 Qt 应用程序崩溃了。Exception handling doesn't work with Qt on Windows 中描述了这种效果(5 年前) .

原来的发布者显然通过自己重新配置和重建 Qt SDK(显式启用 -exceptions)解决了这个问题,但我很难相信所有 Qt 二进制文件都关闭了异常并且每个使用异常的人都必须这样做。

谁能告诉我这是记录在案的地方,告诉我这是真的还是我在这里做错了什么?

我现在使用 Qt 5.4.2 和 MSVC2013,Win 7(从 here 下载 qt-opensource-windows-x86-msvc2013_opengl-5.4.2.exe)。

最佳答案

你没有做错任何事。由于 Qt 不使用异常,因此在默认 Qt 构建中启用它们是不必要的开销。因此,在允许禁用异常的平台上,它们实际上会被禁用。

一般来说,你确实需要自己编译Qt。预构建的二进制文件适合探索和学生使用,但如果您真的想在您的产品中使用它,或者您需要非默认配置,您绝对必须使用您需要的标志自行编译它。

关于c++ - 是否所有官方 Qt 二进制文件都使用 -no-exceptions 构建?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31185046/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com