Repository URL to install this package:
Version:
3.0.0 ▾
|
{$MODE objfpc}
type
IMyInterface = interface
procedure Test(a, b: Integer);
end;
TMyBaseClass = class(TInterfacedObject, IMyInterface)
procedure Test(a, b: Integer); virtual; abstract;
end;
TDescendent = class(TMyBaseClass)
procedure Test(a, b: Integer); override;
end;
var
global_a, global_b: Integer;
procedure TDescendent.Test(a, b: Integer);
begin
global_a := a;
global_b := b;
end;
var
q: IMyInterface;
begin
q := TDescendent.Create;
q.Test(18, 42);
if (global_a <> 18) or (global_b <> 42) then
halt(1);
Writeln('Ok!');
end.