E2011 Unterer Bereich überschreitet oberen Bereich (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Fehler- und Warnungsmeldungen (Delphi)

Diese Fehlermeldung wird angezeigt, wenn die Untergrenze eines Subrange-Typs über dessen Obergrenze liegt oder wenn die Untergrenze eines Case-Label-Bereichs über dessen Obergrenze liegt.


program Produce;
type
  SubrangeType = 1..0;              (*Fehlermeldung: Unterer Bereich überschreitet oberen Bereich *)
begin
  case True of
  True..False:                      (*Fehlermeldung: Unterer Bereich überschreitet oberen Bereich *)
    Writeln('Expected result');
  else
    Writeln('Unexpected result');
  end;
end.

Im obigen Beispiel löst der Compiler eine Fehlermeldung aus, anstatt die Bereiche als leer zu behandeln. Aller Wahrscheinlichkeit nach war das Vertauschen der Grenzen nicht beabsichtigt.


program Solve;
type
  SubrangeType = 0..1;
begin
  case True of
  False..True:
    Writeln('Expected result');
  else
    Writeln('Unexpected result');
  end;
end.

Stellen Sie sicher, dass Sie die Grenzen in der richtigen Reihenfolge festgelegt haben.