Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
CComClassFactorySingleton Class
Collapse the table of content
Expand the table of content

CComClassFactorySingleton Class

This class derives from CComClassFactory and uses CComObjectGlobal to construct a single object.

Important note Important

This class and its members cannot be used in applications that execute in the Windows Runtime.

template< 
class T 
> 
class CComClassFactorySingleton : 
public CComClassFactory

T

Your class.

CComClassFactorySingleton derives from CComClassFactory and uses CComObjectGlobal to construct a single object. Each call to the CreateInstance method simply queries this object for an interface pointer.

Name

Description

CComClassFactorySingleton::CreateInstance

Queries m_spObj for an interface pointer.

Name

Description

CComClassFactorySingleton::m_spObj

The CComObjectGlobal object constructed by CComClassFactorySingleton.

ATL objects normally acquire a class factory by deriving from CComCoClass. This class includes the macro DECLARE_CLASSFACTORY, which declares CComClassFactory as the default class factory. To use CComClassFactorySingleton, specify the DECLARE_CLASSFACTORY_SINGLETON macro in your object's class definition. For example:

class ATL_NO_VTABLE CMySingletonClass :
   public CComObjectRootEx<CComSingleThreadModel>,
   public CComCoClass<CMySingletonClass, &CLSID_MySingletonClass>,
   public IMySingletonClass
{
public:
   DECLARE_CLASSFACTORY_SINGLETON(CMySingletonClass)

   // Remainder of class declaration omitted.

CComObjectRootBase

CComObjectRootEx

IClassFactory

CComClassFactory

CComClassFactorySingleton

Header: atlcom.h

Show:
© 2015 Microsoft