title: Find elements in a vector of tr1::shared_ptr
body: <p>I've wrapped my custom type 'MyType' in a smart pointer:</p>
  
  <pre><code>tr1::shared_ptr&lt;MyType&gt;
  </code></pre>
  
  <p>and made a vector from it:</p>
  
  <pre><code>vector&lt;shared_ptr&lt;MyType&gt;&gt;
  </code></pre>
  
  <p>Now I want to <code>std::find</code> an object of type <code>MyType</code> in that vector but can't since the type I'd need would be <code>shared_ptr&lt;MyType&gt;</code>.</p>
  
  <p>Is there an elegant way?
  Thank you</p>
  
  <p>Update: Why not std::find_if: The usage of std::find is pretty compact. I thought implementing a method or functor for find_if would be a too large overhead.</p>