Template class T class enable_shared_from_this

The shared_ptr is the army tank of reference counted pointers. Its overhead is a little higher than you might be used to, but there are so many handy features (a lot of them safety features) that this pointer is hard to resist. See the proposal for a list of features (which include safety across DLL boundaries).

The shared_ptr works closely with weak_ptr, where weak_ptr takes the place of a raw pointer to break cyclic references. Again see the proposal for many more details and motivation.

This package follows closely from boost::shared_ptr, and has all of the latest improvements from that implementation.

Listing: Class Synopsis
Namespace std::tr1 {
Stuff
}