Partilhar via


Estrutura ImplementsHelper

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

Sintaxe

template <typename RuntimeClassFlagsT, typename ILst, bool IsDelegateToClass>
friend struct Details::ImplementsHelper;

Parâmetros

RuntimeClassFlagsT
Um campo de sinalizadores que especifica um ou mais enumeradores RuntimeClassType.

ILst
Uma lista de IDs de interface.

IsDelegateToClass
Especifique true se a instância atual de Implements é uma classe base da primeira ID de interface no ILst; caso contrário, false.

Comentários

Ajuda a implementar a estrutura Implements.

Esse modelo percorre uma lista de interfaces e as adiciona como classes base e como informações necessárias para habilitar QueryInterface.

Membros

Métodos protegidos

Nome Descrição
ImplementsHelper::CanCastTo Obtém um ponteiro para a ID de interface especificada.
ImplementsHelper::CastToUnknown Obtém um ponteiro para a interface IUnknown subjacente da estrutura Implements atual.
ImplementsHelper::FillArrayWithIid Insere a ID da interface especificada pelo parâmetro de modelo de zero atual no elemento de matriz especificado.
ImplementsHelper::IidCount Contém o número de IDs de interface implementadas no objeto Implements atual.

Hierarquia de herança

ImplementsHelper

Requisitos

Cabeçalho: implements.h

Namespace: Microsoft::WRL::Details

ImplementsHelper::CanCastTo

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

HRESULT CanCastTo(
   REFIID riid,
   _Deref_out_ void **ppv
);

HRESULT CanCastTo(
   _In_ const IID &iid,
   _Deref_out_ void **ppv
);

Parâmetros

riid
Referência a uma ID de interface.

ppv
Se essa operação for bem-sucedida, um ponteiro para a interface especificada por riid ou iid.

iid
Referência a uma ID de interface.

Valor de retorno

S_OK se tiver êxito; caso contrário, um HRESULT que indica o erro.

Comentários

Obtém um ponteiro para a ID de interface especificada.

ImplementsHelper::CastToUnknown

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

IUnknown* CastToUnknown();

Valor de retorno

Ponteiro para a interface subjacente IUnknown.

Comentários

Obtém um ponteiro para a interface IUnknown subjacente da estrutura Implements atual.

ImplementsHelper::FillArrayWithIid

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

void FillArrayWithIid(
   _Inout_ unsigned long *index,
   _Inout_ IID* iids) throw();

Parâmetros

index
Um índice baseado em zero que indica o elemento de matriz inicial para essa operação. Quando essa operação for concluída, o índice será incrementado em 1.

iids
Uma matriz de IIDs de tipo.

Comentários

Insere a ID da interface especificada pelo parâmetro de modelo de zero atual no elemento de matriz especificado.

ImplementsHelper::IidCount

Suporta a infraestrutura WRL e não se destina a ser usado diretamente do seu código.

static const unsigned long IidCount;

Comentários

Contém o número de IDs de interface implementadas no objeto Implements atual.