Sdílet prostřednictvím


SimpleClassFactory – třída

Poskytuje základní mechanismus pro vytvoření základní třídy.

Syntaxe

template<typename Base>
class SimpleClassFactory : public ClassFactory<>;

Parametry

Základna
Základní třída.

Poznámky

Základní třída musí poskytovat výchozí konstruktor.

Následující příklad kódu ukazuje, jak použít SimpleClassFactory s aktivovatelnéClassWithFactoryEx makro.

ActivatableClassWithFactoryEx(MyClass, SimpleClassFactory, MyServerName);

Členové

Veřejné metody

Název Popis
SimpleClassFactory::CreateInstance – metoda Vytvoří instanci zadaného rozhraní.

Hierarchie dědičnosti

I0

ChainInterfaces

I0

RuntimeClassBase

ImplementsHelper

DontUseNewUseMake

RuntimeClassFlags

RuntimeClassBaseT

RuntimeClass

ClassFactory

SimpleClassFactory

Požadavky

Hlavička: module.h

Obor názvů: Microsoft::WRL

SimpleClassFactory::CreateInstance – metoda

Vytvoří instanci zadaného rozhraní.

STDMETHOD( CreateInstance )(
   _Inout_opt_ IUnknown* pUnkOuter,
   REFIID riid,
   _Deref_out_ void** ppvObject
);

Parametry

pUnkOuter
Musí být nullptr; jinak návratová hodnota je CLASS_E_NOAGGREGATION.

SimpleClassFactory nepodporuje agregaci. Pokud by byla agregace podporována a objekt, který byl vytvořen, součástí agregace, pUnkOuter by byl ukazatel na řídicí IUnknown rozhraní agregace.

riid
ID rozhraní objektu, který se má vytvořit.

ppvObject
Po dokončení této operace ukazatel na instanci objektu určeného parametrem riid .

Návratová hodnota

S_OK v případě úspěchu; v opačném případě hodnota HRESULT označující chybu.

Poznámky

Pokud __WRL_STRICT__ je definována, je vyvolána chyba assert, pokud základní třída zadaná v parametru šablony třídy není odvozena z RuntimeClass nebo není nakonfigurována s hodnotou ClassicCom nebo WinRtClassicComMix RuntimeClassType výčtu.