type
  IBarkable = interface(IInterface)
  ['{B241068F-2ED9-43C7-066B-778B94CB58F9}']
    procedure Bark;
  end;

  TAnimal = class(IInterface)
  end;

  TDog = class(TAnimal, IBarkable)
  public
    procedure Live; override;
    procedure Bark;
  end;

and later ...

if Animal is IBarkable then (Animal as IBarkable).Bark;
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to