有没有一种方法可以告诉Intel编译器不要优化未使用的变量?我正在尝试计时某些代码,并且目前通过在变量上使用cout
语句来防止优化。
理想情况下,解决方案将通过pragma/hint告诉编译器不要删除变量,否则我将不得不使用程序参数?
在将变量赋值时使用volatile关键字,以便告诉编译器不要对其进行优化。据我所知,这是C/C++的标准,因此它应该适用于任何编译器。请参阅MSDN链接获取更多信息。
volatile
是一种提示实现避免涉及对象的激进优化,因为对象的值可能会被实现无法检测到的手段改变。 - Elias
volatile
的效果已经足够好了。 - Cody Gray