1 class K { 2 public: f(int i)3 int f(int i) { return i; } 4 }; 5 6 class Q { 7 public: Q()8 Q() { kp = new K; } 9 int g(); 10 private: 11 K * kp; 12 }; 13 g()14 int Q::g() { 15 return (kp->f)(42); 16 }; 17 18 main()19 int main () { 20 Q q; 21 if (q.g() != 42) 22 return 1; 23 } 24