Teilen über


SimpleClassFactory-Klasse

Stellt einen grundlegenden Mechanismus zum Erstellen einer Basisklasse bereit.

Syntax

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

Parameter

Bemessungsgrundlage
Eine Basisklasse.

Hinweise

Die Basisklasse muss einen Standardkonstruktor bereitstellen.

Im folgenden Codebeispiel wird die Verwendung SimpleClassFactory mit dem AktivableClassWithFactoryEx-Makro veranschaulicht.

ActivatableClassWithFactoryEx(MyClass, SimpleClassFactory, MyServerName);

Member

Öffentliche Methoden

Name Beschreibung
SimpleClassFactory::CreateInstance-Methode Erstellt eine Instanz der angegebenen Schnittstelle.

Vererbungshierarchie

I0

ChainInterfaces

I0

RuntimeClassBase

ImplementsHelper

DontUseNewUseMake

RuntimeClassFlags

RuntimeClassBaseT

RuntimeClass

ClassFactory

SimpleClassFactory

Anforderungen

Kopfzeile: module.h

Namespace: Microsoft::WRL

SimpleClassFactory::CreateInstance-Methode

Erstellt eine Instanz der angegebenen Schnittstelle.

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

Parameter

pUnkOuter
Muss ; nullptrandernfalls ist der Rückgabewert CLASS_E_NOAGGREGATION.

SimpleClassFactory unterstützt keine Aggregation. Wenn aggregation unterstützt und das erstellte Objekt Teil eines Aggregats war, wäre pUnkOuter ein Zeiger auf die Steuerungsschnittstelle IUnknown des Aggregats.

riid
Schnittstellen-ID des zu erstellenden Objekts.

ppvObject
Wenn dieser Vorgang abgeschlossen ist, zeigen Sie auf eine Instanz des Objekts, das durch den Riid-Parameter angegeben wird.

Rückgabewert

S_OK, wenn erfolgreich; andernfalls ein HRESULT, das den Fehler angibt.

Hinweise

Wenn __WRL_STRICT__ definiert ist, wird ein Assert-Fehler ausgegeben, wenn die im Klassenvorlagenparameter angegebene Basisklasse nicht von RuntimeClass abgeleitet ist oder nicht mit dem Enumerationswert ClassicCom oder WinRtClassicComMix RuntimeClassType konfiguriert ist.