A class utilizing the C++ features of destructors and operator overloading in order to provide pointer objects which imitate plain old C/C++ pointers but which automatically free the dynamic allocation memory of the objects they reference upon destruction.

Implemented as auto_ptr in the C++ STL.