OStack程序员社区-中国程序员成长平台

标题: c++ - 为什么#pragma优化(“”,关闭) [打印本页]

作者: 菜鸟教程小白    时间: 2022-8-3 00:18
标题: c++ - 为什么#pragma优化(“”,关闭)

我正在审查一个C++ MFC项目。在某些文件的开头有以下行:

#pragma optimize("", off)

我知道这将关闭所有以下功能的优化。但是这样做的动机通常是什么?



Best Answer-推荐答案


我看过正确的生产代码,但是它太复杂了,以至于使优化器产生错误的输出。这可能是关闭优化的原因。

但是,我认为代码更容易出错,具有未定义的行为。优化器暴露了这一点,并导致错误的运行时行为或崩溃。没有优化,代码就会“起作用”。与其找到并消除潜在的问题,不如通过禁用优化并将其留在那儿来“解决”它。

当然,这与脆弱和解决方法有关。新的硬件,新的OS补丁,新的编译器补丁,其中的任何一个都可能破坏这样的“修复”。

即使存在第一个原因的实用程序,也应进行大量记录。

关于c++ - 为什么#pragma优化(“”,关闭),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29033438/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4