title: C++ find first element in vector satisfying a condition using the std library
body: <p>I have a vector containing objects, and each object has a method that returns a boolean.
  I would like to find the first element whose method returns <code>true</code>.</p>
  <p>I know I could simply iterate over the vector using a <code>for</code> loop, but <strong>I'm looking for a solution that uses the std library</strong>.</p>
  <p>Googling I found nothing, just the <code>find</code> and <code>find_if</code> functions, but that's not what I'm looking for. I'm looking for a function that basically takes a reference to the vector and a lambda and returns the first element for which the lambda returns true.</p>
  <p>Note: I would also be interested in a function that returns <strong>an</strong> element, and not necessarily the first.</p>