title: Error C2064 using <functional> and <bind>
body: <p>I really don't know what to do here. Every answer I look up has syntax that I just don't understand.</p>
  
  <p>error:</p>
  
  <pre><code>Error 1 error C2064: term does not evaluate to a function taking 1 arguments
  </code></pre>
  
  <p>I'm using a function pointer in a hash table constructor. It was suggested that I use the  and  headers to solve an issue I was having. It solved the errors, but I ran into the above error.</p>
  
  <p>my Hash Table declaration and ctor are as follows:</p>
  
  <pre><code>#pragma once
  #include "SLList.h"
  
  template&lt;typename Type&gt; class HTable
  {
  public:
       HTable(unsigned int numOfBuckets, std::function&lt;unsigned int(const Type&amp;)&gt;           hFunction);
      ~HTable();
      HTable&lt;Type&gt;&amp; operator=(const HTable&lt;Type&gt;&amp; that);
      HTable(const HTable&lt;Type&gt;&amp; that);
      void insert(const Type&amp; v);
      bool findAndRemove(const Type&amp; v);
      void clear();
      int find(const Type&amp; v) const;
  
  private:
      SLList&lt;Type&gt;* ht;
      std::function&lt;unsigned int(const Type&amp;)&gt; hFunct;
      unsigned int numOfBuck;
  }; 
  
  template&lt;typename Type&gt;
  HTable&lt;Type&gt;:: HTable(unsigned int numOfBuckets, std::function&lt;unsigned int(const     Type&amp;)&gt; hFunction)
  {
      ht = new SLList&lt;Type&gt;[numOfBuckets];
      this-&gt;numOfBuck = numOfBuckets;
      this-&gt;hFunct = hFunction;
  } 
  </code></pre>
  
  <p>Game.h (containing the table):</p>
  
  <pre><code>#pragma once
  
  #include "stdafx.h"
  #include "HTable.h"
  #include "BST.h"
  #include "DTSTimer.h"
  
  using namespace std;
  
  class Game
  {
  public:
      Game(void);
      virtual ~Game(void);
      void refresh();
      void input();
      unsigned int xorHash(const string &amp;s);
  
  private:
      string userInput;
      DTSTimer timer;
      BST&lt;string&gt; answers;
      HTable&lt;string&gt; dictionary;
  }; 
  </code></pre>
  
  <p>Game.cpp (I am attempting to pass in the xorHash function)</p>
  
  <pre><code>#include "Game.h"
  
  
  Game::Game(void) : dictionary(2048, std::bind(&amp;Game::xorHash, this))
  {
  
  }
  
  
  Game::~Game(void)
  {
  
  }
  
  void Game::refresh()
  {
  
  }
  
  void Game::input()
  {
  
  }
  
  unsigned int Game::xorHash(const string &amp;s)
  {
      return 0;
  }
  </code></pre>
  
  <p>Thanks in advance.</p>