fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. class InterfaceA
  5. {
  6. virtual void funA() = 0;
  7. };
  8. class InterfaceB:
  9. public InterfaceA
  10. {
  11. virtual void funB() = 0;
  12. };
  13. class InterfaceC:
  14. public InterfaceA
  15. {
  16. };
  17. class InterfaceD:
  18. public InterfaceB
  19. {
  20. };
  21.  
  22. class KlasseA:
  23. public InterfaceB,
  24. public InterfaceC,
  25. public InterfaceD
  26. {
  27. public:
  28. KlasseA();
  29. ~KlasseA();
  30.  
  31. void funA() final override;
  32. };
  33.  
  34. //Implementierung:
  35. KlasseA::KlasseA(){}
  36. KlasseA::~KlasseA(){}
  37. void KlasseA::funA(){}
  38.  
  39.  
  40. class KlasseE: public KlasseA
  41. {
  42. public:
  43. KlasseE();
  44. ~KlasseE();
  45.  
  46. void funB() override;
  47. };
  48. //Implementierung:
  49. KlasseE::KlasseE(){}
  50. KlasseE::~KlasseE(){}
  51. void KlasseE::funB(){}
  52.  
  53.  
  54. int main() {
  55. KlasseE *e = new KlasseE();
  56.  
  57. return 0;
  58. }
Success #stdin #stdout 0s 16056KB
stdin
Standard input is empty
stdout
Standard output is empty