class R; 
forward reference

class A {
\fbox{A}
public: A(int n);
integer elements

A(char* s);
char* elements

~A() { delete rep; } R* operator->() { return rep; } private: R* rep; };

slide: The interface class