title: Trying to call a member function pointer won't work
body: <p>I know member function pointers are a bit tricky, and I can call it if the function pointer isn't a member of the class itself, but can't seem to do it if it's a member of the class:</p>
  
  <pre><code>struct Window
  {
      virtual void handleEvent() {};
      void (Window::*pHandleEvent)();
  };
  
  int main()
  {
      Window w;
      void (Window::*fnptr)() = &amp;Window::handleEvent;
      (w.*fnptr)(); // Works fine calling a local func ptr
      w.pHandleEvent(); // Calling its own member pointer doesn't work
      // Err: Expression preceding parentheses of apparent call must have
      // (pointer-to) function type
      (w.*pHandleEvent)();    // Doesn't work
      //Err: identifier "pHandleEvent" is undefined
      (w.*Window::pHandleEvent)();    // Doesn't work.
      // Err: A non-static member reference must be relative to a specific object.
  }
  </code></pre>