This class manages a reference count on the module containing your Base object.
template< class Base > class CComObjectGlobal : public Base
- Your class, derived from CComObjectRoot or CComObjectRootEx, as well as from any other interface you want to support on the object.
CComObjectGlobal manages a reference count on the module containing your Base object. CComObjectGlobal ensures your object will not be deleted as long as the module is not released. Your object will only be removed when the reference count on the entire module goes to zero.
For example, using CComObjectGlobal, a class factory can hold a common global object that is shared by all its clients.