c ++ pragma optimization vs build flags

时间:2017-03-11 15:22:31

标签: c++ pragma

我真的不明白pragma做了什么,我有一个问题。 如果我使用-O2标志运行我的程序并且我的代码中有#pragma optimize("O3"),它是否会使用O3或O2优化?

1 个答案:

答案 0 :(得分:0)

从MSVC的角度来看,#pragma通常独立于编译器标志。从您声明#pragma语句开始,您的编译器将使用O3优化,如果您使用on参数,例如#pragma optimize("O3",on)

如MS文档中所述......

  

优化编译指示必须出现在函数外部,并在看到编译指示后定义的第一个函数生效。 on和off参数打开或关闭优化列表中指定的选项。

https://msdn.microsoft.com/en-us/library/chh3fb0k.aspx

收集