A C++ smart pointer including auto_ptr and shared_ptr and difference from Boost By caustic A C++ smart pointer including auto_ptr and shared_ptr and difference from Boost