Share via


CComClassFactorySingleton クラス

このクラスは、CComClassFactory から派生します。また、CComObjectGlobal を使用して単一のオブジェクトを生成します。

template<
   class T
>
class CComClassFactorySingleton :
   public CComClassFactory

パラメーター

  • T
    作成したクラス。

CComClassFactorySingletonCComClassFactory から派生します。そして、CComObjectGlobal を使用して単一のオブジェクトを生成します。 CreateInstance メソッドが呼び出される度に、このオブジェクトに対してインターフェイス ポインターの問い合わせが行われます。

解説

ATL オブジェクトは、通常クラス ファクトリを CComCoClass から派生させることによって作成します。 このクラスには DECLARE_CLASSFACTORY マクロが含まれています。このマクロは、CComClassFactory を既定のクラス ファクトリとして宣言します。 CComClassFactorySingleton を使用するには、オブジェクトのクラス定義で DECLARE_CLASSFACTORY_SINGLETON マクロを指定します。 次に例を示します

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.

必要条件

**ヘッダー:**atlcom.h

参照

参照

IClassFactory

CComClassFactory2 クラス

CComClassFactoryAutoThread クラス

CComObjectRootEx クラス

CComGlobalsThreadModel

その他の技術情報

CComClassFactorySingleton のメンバー

ATL クラスの概要