title: any_of Versus find_if
body: <p>C++11 introduced <code>any_of</code> to <code>algorithm</code>s.</p>
  
  <p>This seems to work exactly like <code>find_if</code>.</p>
  
  <p>Say I have a functor: <code>function&lt;bool(int)&gt; foo;</code>
  And an array: <code>vector&lt;int&gt; bar;</code></p>
  
  <p>It seems like these two calls do the exact same thing:</p>
  
  <pre><code>any_of(bar.begin(), bar.end(), foo);
  </code></pre>
  
  <p>and</p>
  
  <pre><code>bar.end() != find_if(bar.begin(), bar.end(), foo);
  </code></pre>
  
  <p>I further feel that <code>all_of</code>, and <code>none_of</code> can be accomplished by negating the <code>find_if</code> statement.</p>
  
  <p><strong>Are these algorithms just here to do the comparison to <code>end</code> for us, or is there a usefulness I don't understand?</strong></p>