Interface -- access

  class A { 
\fbox{A}
public: A() { delegate = new F; } F* operator->() { return delegate; } void extra() { cout << "extra"; } private: F* delegate; };

slide: An interface class