language: C++ 4.7.2 (gcc-4.7.2)
date: 221 days 23 hours ago
link:
visibility: public
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
class A {
 public:
  class B {public: bool value;};
 
  A() {}
  B b_;
 protected:
  void DoStuff(B& b) { return DoStuffImpl(b); }
 private:
  virtual void DoStuffImpl(B& b) = 0;
};
 
class X : public A {
 public:
  X() {}
  void Trigger();
 private:
  virtual void DoStuffImpl(B& b);
};
 
void X::Trigger() {
    DoStuff(b_);
}
void X::DoStuffImpl(B& b) {
    b.value = true;
}
 
int main(){
    X x;
    x.Trigger();
    return x.b_.value;
}