fork download
  1. class A {
  2. public:
  3. class B {public: bool value;};
  4.  
  5. A() {}
  6. B b_;
  7. protected:
  8. void DoStuff(B& b) { return DoStuffImpl(b); }
  9. private:
  10. virtual void DoStuffImpl(B& b) = 0;
  11. };
  12.  
  13. class X : public A {
  14. public:
  15. X() {}
  16. void Trigger();
  17. private:
  18. virtual void DoStuffImpl(B& b);
  19. };
  20.  
  21. void X::Trigger() {
  22. DoStuff(b_);
  23. }
  24. void X::DoStuffImpl(B& b) {
  25. b.value = true;
  26. }
  27.  
  28. int main(){
  29. X x;
  30. x.Trigger();
  31. return x.b_.value;
  32. }
Runtime error #stdin #stdout 0.02s 2676KB
stdin
Standard input is empty
stdout
Standard output is empty