fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. class X
  5. {
  6. virtual void internalCall() { cout << "Class X" << endl; }
  7. public:
  8. void externalCall() { internalCall(); }
  9. };
  10.  
  11. class Y : public X
  12. {
  13. protected:
  14. virtual void internalCall2() { cout << "Class Y2" << endl; }
  15. virtual void internalCall()
  16. {
  17. cout << "Class Y" << endl;
  18. internalCall2();
  19. }
  20. };
  21.  
  22. int main()
  23. {
  24. Y y;
  25. y.externalCall();
  26. }
Success #stdin #stdout 0s 3344KB
stdin
Standard input is empty
stdout
Class Y
Class Y2