| | | | | |

Member function "callbacks"

class Parrot
{
public:
  void Eat()
  {
    std::cout << "tsk, knick, tsk, knick, ...\n";
  }
  void Speak()
  {
    std::cout << "Gerry wanna cracker\n";
  }
};

int main()
{
  typedef void (Parrot::* TpMemFun)();
  TpMemFun pActivity = &Parrot::Eat;
  Parrot geronimo;
  Parrot * pGeronimo = &geronimo;
  (geronimo.*pActivity)();   // "tsk, knick, tsk, knick, ..."
  (pGeronimo->*pActivity)(); // "tsk, knick, tsk, knick, ..."
  pActivity = &Parrot::Speak;
  (geronimo.*pActivity)();   // "Gerry wanna cracker"
}

| | Top of Page | 8. Generalized Functors - 16 of 26