Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Data Structures
MMgt_TShared.hxx File Reference
#include <Standard.hxx>
#include <Standard_DefineHandle.hxx>
#include <Handle_MMgt_TShared.hxx>
#include <Standard_Transient.hxx>

Data Structures

class  MMgt_TShared
 The abstract class TShared is the root class of
managed objects. TShared objects are managed
by a memory manager based on reference
counting. They have handle semantics. In other
words, the reference counter is transparently
incremented and decremented according to the
scope of handles. When all handles, which
reference a single object are out of scope, the
reference counter becomes null and the object is
automatically deleted. The deallocated memory is
not given back to the system though. It is
reclaimed for new objects of the same size.
Warning
This memory management scheme does not
work for cyclic data structures. In such cases
(with back pointers for example), you should
interrupt the cycle in a class by using a full C++
pointer instead of a handle.
More...