title: Calling template pointer to member function
body: <p>Im working on a GUI and i want to be able to pass function pointers to my buttons, however, these could be called from different kinds of classes, which is why i made it use templates.</p>
  
  <p>I do believe it stores the function pointer correctly but i cannot call it correctly.</p>
  
  <pre><code>class MainMenuScene: public Scene
  {
      public:
          void add_button(){
              void (MainMenuScene::*func)();
              func = &amp;MainMenuScene::test;
              Button b(func);
              b.click();
          }
          void test();
      private:
          GUI&lt;MainMenuScene&gt; gui;
  };
  
  
  template&lt;class T&gt;
  class Button: public GUI_object{
  public:
      Button(void (T::*func)());
      void click(){
          func_();
  private:
      void (T::*func_)();
  };
  </code></pre>
  
  <p>This is the error i get: </p>
  
  <pre><code>Button.h|23|error: must use '.*' or '-&gt;*' to call pointer-to-member function 
  in '((Button&lt;MainMenuScene&gt;*)this)-&gt;Button&lt;MainMenuScene&gt;::func_ (...)', 
  e.g. '(... -&gt;* ((Button&lt;MainMenuScene&gt;*)this)-&gt;Button&lt;MainMenuScene&gt;::func_) (...)'|
  </code></pre>