/Ox(启用最大速度优化)

/Ox 编译器选项启用有利于提高速度的优化组合。 在某些版本的 Visual Studio IDE 和编译器帮助消息中,它称为“完全优化”,但 /Ox 编译器选项仅启用 /O2 支持的速度优化选项的子集。

语法

/Ox

备注

/Ox 编译器选项启用有利于提高速度的 /O 编译器选项。 /Ox 编译器选项不包括 /O1/O2(使大小最小化、使速度最大化)支持的其他 /GF(消除重复字符串)/Gy(启用函数级链接)选项。 /O1/O2 应用的其他选项可能导致指向字符串或函数的指针共享目标地址,从而影响调试和严格的语言一致性。 /Ox 选项是一种简单的方式,它无需包含 /GF/Gy 就可启用大多数优化。 有关详细信息,请参阅有关 /GF/Gy 选项的说明。

/Ox 编译器选项与结合使用以下选项的作用相同:

/Ox 与以下选项互斥:

如果指定 /Oxs,即将 /Ox 编译器选项和 /Os(代码大小优先)结合使用,可使 /Ox 编译器选项取消速度优先。 结合使用的选项优先更小的代码大小。 如果按此顺序使用这些选项,则 /Oxs 选项与指定 /Ox/Os 的作用完全相同。

为在发布版本中应用所有可用的文件级优化,建议指定 /O2(使速度最大化)而不是 /Ox,指定 /O1(使大小最小化)而不是 /Oxs。 为在发布版本中实现更多优化,还可以考虑 /GL(全程序优化)编译器选项和 /LTCG(链接时间代码生成)链接器选项。

在 Visual Studio 开发环境中设置此编译器选项

  1. 打开项目的“属性页” 对话框。 有关详细信息,请参阅在 Visual Studio 中设置 C++ 编译器和生成属性

  2. 选择“配置属性”>“C/C++”>“优化”属性页面

  3. 修改“优化”属性

以编程方式设置此编译器选项

另请参阅

/O 选项(优化代码)
MSVC 编译器选项
MSVC 编译器命令行语法