1 class PureVirtualIFace { 2 public: 3 virtual void Foo() = 0; 4 virtual void Bar(unsigned int) = 0; 5 }; 6 7 class AnotherInterface { 8 public: 9 virtual void Baz() = 0; 10 }; 11 12 class Implementation : public PureVirtualIFace { 13 public: 14 void Foo() override {} 15 void Bar(unsigned int) override {} 16 }; 17 18 class DoubleImpl : public PureVirtualIFace, public AnotherInterface { 19 public: 20 void Foo() override {} 21 void Bar(unsigned int) override {} 22 23 void Baz() override {} 24 }; 25