ich möchte gern mehrere Klassen von einer Basisklasse ableiten. Bei Methoden mit dem Zusatz "virtual abstract" bekomme ich eine schöne Warnung "project1.lpr(22,29) Warning: Constructing a class "TMyClass" with abstract method "Foo"".
Kann ich einer Methode einen anderen ähnlichen Zusatz wie "abstract" zuweisen, wenn ich bei nicht abstrakten Methoden auch so eine Warnung haben möchte. Hintergrund ist der, daß ich keine nachfolgende Methode vergessen will, zu überschreiben. Bisher füge ich mir immer händisch "Todos" ein, dies würde ich mir gern sparen.
Bsp.:
Code: Alles auswählen
program Project1;
type
TBaseClass = class
procedure Foo; virtual; abstract;
procedure Bar; virtual;
end;
TMyClass = class(TBaseClass)
// Hier fehlen beide Methoden. Eine Warnung erhalte ich für die abstrakte
// Methode, hätte aber gern auch eine für die virtuelle Methode.
end;
var
MyClass: TMyClass;
procedure TBaseClass.Bar;
begin
WriteLn('BaseClass should do some stuff');
end;
begin
MyClass := TMyClass.Create;
MyClass.Free;
end.