Delphi代码编译错误

时间:2015-10-04 16:44:03

标签: delphi delphi-xe8

enter image description here

当我编译我的代码时,我可以看到一些行没有编译。由于这个问题,一些代码不会按照我想要的方式执行。 我已经在调试模式下附加了delphi IDE的屏幕截图。左侧的蓝点表示编译的行,没有蓝点的行不能正常工作或不符合 从监视窗口可以看出,变量dPcnt值为0 taxP,srvP,serv_charge没有正确的值,但在代码窗口中可以看到变量已初始化为0 有人可以帮我解决问题。

1 个答案:

答案 0 :(得分:2)

优化器已删除无用的行,如

srvP := 0;

因为在第770行分配新值之前不使用该值。

我看不出其他变量的使用方式和位置,但我敢打赌原因是相似的。

您可以使用编译器指令{$O+} or {$O-} {$OPTIMIZATION ON} or {$OPTIMIZATION OFF}打开和关闭优化。但是,请注意有关它的帮助说明:

  

除了某些调试情况,你永远不应该有   需要关闭优化。由...执行的所有优化   保证Delphi编译器不会改变程序的含义。   换句话说,编译器不会执行“不安全”的优化   需要程序员的特别意识。

如果您打开了编译器提示({$HINTS ON}),您将在H2077 Value assigned to '%s' never used形式中看到“无用”行的提示。 更多信息:

H2077 Value assigned to '%s' never used #Delphi#