Compartir a través de


SimpleClassFactory (clase)

Proporciona un mecanismo fundamental para crear una clase base.

Sintaxis

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

Parámetros

Base
Una clase base.

Comentarios

La clase debe proporcionar un constructor predeterminado.

En el ejemplo de código siguiente se muestra cómo usar SimpleClassFactory con la macro ActivatableClassWithFactoryEx.

ActivatableClassWithFactoryEx(MyClass, SimpleClassFactory, MyServerName);

Miembros

Métodos públicos

Nombre Descripción
SimpleClassFactory::CreateInstance (método) Crea una instancia de la interfaz especificada.

Jerarquía de herencia

I0

ChainInterfaces

I0

RuntimeClassBase

ImplementsHelper

DontUseNewUseMake

RuntimeClassFlags

RuntimeClassBaseT

RuntimeClass

ClassFactory

SimpleClassFactory

Requisitos

Encabezado: module.h

Espacio de nombres: Microsoft::WRL

SimpleClassFactory::CreateInstance (Método)

Crea una instancia de la interfaz especificada.

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

Parámetros

pUnkOuter
Debe ser nullptr; de lo contrario, el valor devuelto es CLASS_E_NOAGGREGATION.

SimpleClassFactory no admite la agregación. Si se admitía la agregación y el objeto que se crea formaba parte de un agregado, pUnkOuter sería un puntero a la interfaz de control IUnknown del agregado.

riid
Identificador de interfaz del objeto que se va a crear.

ppvObject
Cuando se complete esta operación, puntero a una instancia del objeto especificado por el parámetro riid.

Valor devuelto

S_OK si se realiza correctamente; de lo contrario, un HRESULT que indica el error.

Comentarios

Si __WRL_STRICT__ está definido, se genera un error de aserción en cado de que la clase base especificada en el parámetro de plantilla de clase no se derive de RuntimeClass o no esté configurada con el valor de enumeración RuntimeClassType de ClassicCom o WinRtClassicComMix.