title: How do you pass boost::bind objects to a function?
body: <p>I have a one-dimensional function minimizer.  Right now I'm passing it function pointers.  However many functions have multiple parameters, some of which are held fixed.  I have implemented this using functors like so</p>
  
  <pre><code>template &lt;class T&gt;
  minimize(T &amp;f) {
  }
  
  Functor f(param1, param2);
  minimize&lt;Functor&gt;(f);
  </code></pre>
  
  <p>However the functor definition has lots of crud.  Boost::bind looks cleaner.  So that I could do:</p>
  
  <pre><code>minimize(boost:bind(f,_1,param1,param2))
  </code></pre>
  
  <p>However I'm not clear what my <code>minimize</code> declaration should like like using <code>boost::bind</code>.  What type of object is <code>boost::bind</code>?  Is there an easy pattern for this that avoids the boilerplate of functors but allows multiple parameter binding?</p>