All classes are in the NoPtr namespace. A default namespace alias called nop is also defined for you. See NoPtrAlias.hh for details and how to override this alias with one of your choice.
The header files you may need to #include:
A brief description of each of the four classes, and how they collaborate:
- NoPtr::DynObj<TT>: this is a proxy for a DAO (dynamically allocated object, ie one created from a call to new) of type TT. The DAO is destroyed when the DynObj goes out of scope. Declare as NoPtr::DynObj<TT>::InValueContainer when used in a value-based container, such as the STL containers.
- NoPtr::DynTmp<TT>: a DynObj that is an unnamed temporary. Used solely for moving ownership across scopes via return values.
- NoPtr::RRef<TT>: a Reseatable Reference to a DAO of type TT. When the DynObj that is proxying for the DAO is destroyed, the RRef knows. Any attempt to access the DAO will cause an assertion to fail if the -DNDEBUG was NOT specified to the compiler, otherwise the normal undefined behavior occurs.
- NoPtr::RRefable: a base class for an object that can be used as an RRef. When the object goes out of scope, any RRef's that were referring to it know (see previous item).
Generated on Mon Aug 4 18:51:32 2003 for NoPtr C++ Library by
1.3.2