【问题标题】:Delphi disable warnings failsDelphi禁用警告失败
【发布时间】:2010-05-08 06:34:29
【问题描述】:

我在 Delphi 2007 应用程序中有以下代码:

function TBaseCriteriaObject.RecursiveCount(
  ObjType: TBaseCriteriaObjectClass): integer;
var    
  CurObj: TBaseCriteriaObject;
begin
  result := 0;
{$WARNINGS OFF}
  for CurObj in RecursiveChildren(ObjType) do
    Inc(Result);
{$WARNINGS ON}
end;

产生此警告的原因:

[DCC Warning] BaseCriteriaObject.pas(255): H2077 Value assigned to 'CurObj' never used

我了解警告但不想更改代码,那么我该如何摆脱警告,因为 {$WARNINGS OFF} 在这种情况下似乎不起作用?

【问题讨论】:

    标签: delphi compiler-warnings


    【解决方案1】:

    来自 Delphi 帮助:

    $WARNINGS 指令仅适用于 过程或功能层 粒度。也就是说,你可以围绕 整个过程和功能与 $WARNINGS 指令,但不是 语句块 过程或函数。

    【讨论】:

    • 干杯伙伴!这似乎也是一个提示,而不是警告。 {$HINTS OFF} 禁用它(当围绕过程而不是语句时)
    • 用于函数的警告设置是在到达函数的end 时生效的任何设置。
    • @Rob Kennedy:有趣的评论。你一定看过编译器源码:)。
    • 不。以前刚在街区附近。相同的规则适用于溢出检查 ({$Q}),但不适用于范围检查 ({$R})。
    猜你喜欢
    • 2011-01-25
    • 1970-01-01
    • 1970-01-01
    • 2020-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-03
    • 1970-01-01
    相关资源
    最近更新 更多