I was wondering if there are any differences between the boost::shared_ptr and the std::shared_ptr found in the standard
std::shared_ptr is the C++0x form of tr1::shared_ptr, and boost's boost::shared_ptr should behave the same.
However, std::shared_ptr, in an implementation that conforms to C++0x standard, should/might have more convenience behavior on the shared_ptr class, as described in the following links:
Differences between different flavours of shared_ptr
http://en.wikipedia.org/wiki/C%2B%2B0x#General-purpose_smart_pointers
The
shared_ptris a reference-counted pointer that acts as much as possible like a regular C++ data pointer. The TR1 implementation lacked certain pointer features such as aliasing and pointer arithmetic, but the C++0x version will add these.
Though from a quick cursory glance, I do not see operator+ and similar arithmetic operations on the shared_ptr type.