【问题标题】:Optimize only a single method in a Debug configuration仅优化 Debug 配置中的单个方法
【发布时间】:2018-05-16 19:10:04
【问题描述】:

我希望能够编译一种特定的方法,就好像优化配置是“最大化速度”的/O2

我已尝试查找#pragma optimize("", { on, off }) 解决方案,但它不起作用。

#pragma optimize("", on)
void Mesh::openGL_paint()
{
    // external functions calls with huge overhead when debugging.
}
#pragma optimize("", off)

【问题讨论】:

  • 为了可移植性,我将该函数放在它自己的文件中(或与一堆需要类似优化级别的其他文件一起),并使用构建系统级别的规则来处理它。 opt.o 文件或类似文件。
  • 我相信您可以使用#pragma 来禁用对启用优化的编译文件中的函数进行优化,但反之则不行。
  • @user4581301 发表评论并提供更多详细信息,以便我可以选择它作为接受的答案。这个对我有用。谢谢。
  • @PaulSanders:严格来说这不是真的,但这是 hnad 的实际问题。

标签: c++ optimization visual-c++


【解决方案1】:

您忘记包含要启用的优化参数。而且由于它是一个调试版本,因此没有可依赖的命令行默认值。

#pragma optimize("gty", on)

【讨论】:

    猜你喜欢
    • 2020-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-19
    • 1970-01-01
    • 2013-06-25
    • 2015-05-17
    相关资源
    最近更新 更多