title: C++ Bind failure due to unable to resolve overloaded function
body: <pre><code>void printVector(vector&lt;int&gt; &amp;data){
          for(auto i : data){
                  cout&lt;&lt; i &lt;&lt; " ";
          }
          cout&lt;&lt;endl;
  }
  
  int main(){
      std::vector&lt;int&gt; data {0,1,2,3,4,5,6,7,8,9};
      vector&lt;int&gt; result;
      result.resize(data.size());
      transform(data.begin(),data.end(),result,bind(std::pow,_1,2));
      return 0;
  }
  </code></pre>
  
  <p>The error thrown is:</p>
  
  <pre><code>stlalgo.cpp:22:61: error: no matching function for call to ‘bind(&lt;unresolved overloaded function type&gt;, const std::_Placeholder&lt;1&gt;&amp;, int)’ 
  </code></pre>
  
  <p>How do i hint which overloaded function needs to be used in bind?</p>
  
  <p>Cheers!</p>