title: How to bind one of member functions of the same name in a class, with c++11 std::bind
body: <pre><code>class Test{
  public:
  
      int work(){
          cout &lt;&lt; "in work " &lt;&lt; endl;
          return 0;
      }
  
      void work(int x){
          //cout &lt;&lt; "x = " &lt;&lt; x &lt;&lt; endl;
          cout &lt;&lt; "in work..." &lt;&lt; endl;
      }
  };  
  
  int main(){
      Test test;
      std::function&lt;void()&gt; f = std::bind(&amp;Test::work, &amp;test);
      thread th(f);
      th.join();
      return 0;
  }
  </code></pre>
  
  <p>As above code, I want to bind member function <code>void work(void)</code> of a class (let's name it Test) , but occurs compiler error saying that can not determine which overrided function to use.</p>
  
  <p>I can not change class Test since it belongs to a lib, how to achieve my goal? Thanks in advance!</p>