E2167 Abstrakte Methoden müssen virtuell oder dynamisch sein (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Fehler- und Warnungsmeldungen (Delphi)

Wird eine abstrakte Methode in einer Basisklasse deklariert, muss sie entweder vom normalen virtuellen oder dynamischen virtuellen Typ sein.


program Produce;

  type
    Base = class
      procedure DaliVision; abstract;
      procedure TellyVision; abstract;
    end;

begin
end.

Die Deklaration weist einen Fehler auf, da abstrakte Methoden entweder virtuell oder dynamisch sein müssen.


program Solve;

  type
    Base = class
      procedure DaliVision; virtual; abstract;
      procedure TellyVision; dynamic; abstract;
    end;

begin
end.

Dieser Fehler kann entfernt werden, indem die Methode als virtual oder dynamic festgelegt wird, je nachdem, welcher Typ für Ihre Anwendung am besten geeignet ist.