title: Difference between shared_dynamic_cast and dynamic_pointer_cast
body: <p>Can someone explain to me the difference between:</p>
  
  <p><code>shared_dynamic_cast</code> and <code>dynamic_pointer_cast</code> from the Boost library?</p>
  
  <p>It appears to me that they may be equivalent.</p>