title: usage of std bind in c++ for functions with an argument (string)
body: <p>I'm trying to create a vector of std::functions in my logger class. When I try to bind a method to my std::function like that : </p>
  
  <pre><code>NcursesWindow log_win("Logs",LINES-1,COLS/3,0,COLS*2/3);
  std::function&lt;void(std::string)&gt; f = std::bind(&amp;NcursesWindow::add_string,&amp;log_win);
  </code></pre>
  
  <p>the add_string function being defined like : </p>
  
  <pre><code>void add_string(string text);
  </code></pre>
  
  <p>However, gcc (with the gfilt addon to try to understand the template errors) returns : </p>
  
  <pre><code>BD Software STL Message Decryptor v3.10 for gcc 2/3/4
  In file included from ./inc/ncursesui.h:6:0,
  from src/ncursesui.cpp:1:
  functional: In static member function ‘static void _Function_handler&lt;
      void({basic_string&lt;char&gt;} ...), _Bind&lt;
          _Mem_fn&lt;void (NcursesWindow::*)(basic_string&lt;char&gt;)&gt;(
              NcursesWindow)&gt; 
  &gt;::_M_invoke(const _Any_data &amp;, {basic_string&lt;char&gt;} ...)’:
  [STL Decryptor: Suppressed 1 more STL standard header message]
  src/ncursesui.cpp:32:86:   instantiated from here
  functional:1778:2: erreur: no match for call to ‘(
      _Bind&lt;
          _Mem_fn&lt;void (NcursesWindow::*)(basic_string&lt;char&gt;)&gt;(
              NcursesWindow)&gt;) (basic_string&lt;char&gt;)’
  
  STL Decryptor reminders:
  Use the /hdr:L option to see all suppressed standard lib headers
  Use the /cand:L option to see all suppressed template candidates
  </code></pre>