fork(1) download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. class PierwszyDelegat {
  5. public:
  6. virtual void callBack() = 0;
  7. };
  8.  
  9. class Pierwsza {
  10. protected:
  11. PierwszyDelegat *delegat;
  12. public:
  13. Pierwsza() : delegat(nullptr) {}
  14. virtual ~Pierwsza() {}
  15. void wykonajCallback(){ if (delegat) delegat->callBack(); }
  16. };
  17.  
  18. class Druga : public Pierwsza, public PierwszyDelegat {
  19. public:
  20. Druga() {
  21. delegat = this;
  22. }
  23. void callBack() { cout << "Test" << endl; }
  24. };
  25.  
  26. int main(){
  27. Pierwsza *obj = new Druga();
  28. obj->wykonajCallback();
  29. delete obj;
  30. return 0;
  31. }
  32.  
Success #stdin #stdout 0s 3228KB
stdin
Standard input is empty
stdout
Test