gpt4 book ai didi

c++ - 不会被优化掉的最简单的 "unused"代码是什么?

转载 作者:太空狗 更新时间:2023-10-29 20:45:04 26 4
gpt4 key购买 nike

我经常想通过断点测试函数中变量的值。在许多情况下,该变量实际上从未被任何“做事”的代码引用,但这并不意味着我仍然不想看到它。不幸的是,优化器对我不利,并且在编译时简单地删除了所有此类代码,因此我不得不想出令人费解的粗话来愚弄编译器,让它们认为这些值实际上很重要,因此它们不会被优化掉。我不想关闭优化器,因为它在其他地方做着重要的事情,但为了调试,我想暂时禁用这一段代码。

最佳答案

生成可观察行为的代码符合定义的要求。例如,printf("")

访问 volatile 变量在形式上也构成了可观察的行为,尽管如果某些编译器仍然丢弃“不必要的”volatile 变量,我不会感到惊讶。

出于这个原因,对 I/O 函数的调用对我来说似乎是最好的选择。

关于c++ - 不会被优化掉的最简单的 "unused"代码是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11697026/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com