Compartilhar via


Classe ClassFactory

Implementa a funcionalidade básica de interface de IClassFactory.

template < typename I0 = Details::Nil, typename I1 = Details::Nil, typename I2 = Details::Nil > class ClassFactory : public Details::RuntimeClass< typename Details::InterfaceListHelper<IClassFactory, I0, I1, I2, Details::Nil>::TypeT, RuntimeClassFlags<ClassicCom | InhibitWeakReference>, false>;

Parâmetros

  • I0
    A interface de zeroth.

  • I1
    A primeira interface.

  • I2
    A segunda interface.

Comentários

Utilize ClassFactory para fornecer uma implementação definido pelo usuário de fábrica.

O exemplo a seguir padrão de programação demonstra como usar a estrutura de Implementa para especificar mais de três interfaces em uma fábrica da classe.

struct MyFactory : ClassFactory<Implements<I1, I2, I3>, I4, I5>

Membros

BR245075.collapse_all(pt-br,VS.110).gifConstrutores Públicos

Nome

Descrição

Construtor de ClassFactory::ClassFactory

BR245075.collapse_all(pt-br,VS.110).gifMétodos Públicos

Nome

Descrição

Método ClassFactory::AddRef

Sai contagem de referência para o objeto atual de ClassFactory.

Método ClassFactory::LockServer

Incrementos ou diminuições o número de objetos subjacentes que são controlados pelo objeto atual de ClassFactory.

Método ClassFactory::QueryInterface

Recupera um ponteiro para a interface especificada pelo parâmetro.

Método ClassFactory::Release

Diminui a contagem de referência para o objeto atual de ClassFactory.

Hierarquia de Herança

I0

ChainInterfaces

I0

RuntimeClassBase

ImplementsHelper

DontUseNewUseMake

RuntimeClassFlags

RuntimeClassBaseT

RuntimeClass

ClassFactory

Requisitos

Cabeçalho: module.h

Namespace: Microsoft::WRL

Consulte também

Referência

Namespace Microsoft::WRL

Enumeração RuntimeClassType