如何在 Delphi Rio 中关闭编译器优化?

问题描述 投票:0回答:1

enter image description here

尽管如此,当我运行由于硬编码值而只有一个可能路径的代码时,死代码会被删除。我不希望这样,因为我试图在调试时查看一堆派生值。我能做什么?

编辑:请注意,甚至 OutputDebugString 也被剥离了:enter image description here

delphi
1个回答
0
投票

您无法关闭“死代码删除”。它不受优化开关控制。

唯一的方法是使语句在编译时不可计算为死代码,例如,通过包含一个条件 - 对于编译器 - 可以采用任何一种方式,但在您的情况下始终返回 FALSE,如下所示:

IF GetTickCount=0 THEN 
  // This line is always included, but never executed.
© www.soinside.com 2019 - 2024. All rights reserved.