title: Difference between ATL CAutoPtr and STL std::auto_ptr?
body: <p>I'm writing some code in MFC and I want to use auto pointers. I've come across two different classes that look like they do the same thing: <code>CAutoPtr</code> and <code>std::auto_ptr</code> What are people's thoughts about the two different implementations?</p>
  
  <p>Further, I know there is <code>std::tr1::shared_ptr</code>. Is there a similar <code>shared_ptr</code> that is in ATL/MFC?</p>