Partilhar via


Estrutura implementa

Implementa QueryInterface e GetIid para interfaces especificadas.

template <
   typename I0,
   typename I1 = Details::Nil,
   typename I2 = Details::Nil,
   typename I3 = Details::Nil,
   typename I4 = Details::Nil,
   typename I5 = Details::Nil,
   typename I6 = Details::Nil,
   typename I7 = Details::Nil,
   typename I8 = Details::Nil,
   typename I9 = Details::Nil
>
struct __declspec(novtable) Implements : Details::ImplementsHelper<RuntimeClassFlags<WinRt>, typename Details::InterfaceListHelper<I0, I1, I2, I3, I4, I5, I6, I7, I8, I9>::TypeT>, Details::ImplementsBase;
template <
   int flags,
   typename I0,
   typename I1,
   typename I2,
   typename I3,
   typename I4,
   typename I5,
   typename I6,
   typename I7,
   typename I8
>
struct __declspec(novtable) Implements<RuntimeClassFlags<flags>, I0, I1, I2, I3, I4, I5, I6, I7, I8> : Details::ImplementsHelper<RuntimeClassFlags<flags>, typename Details::InterfaceListHelper<I0, I1, I2, I3, I4, I5, I6, I7, I8>::TypeT>, Details::ImplementsBase;

Parâmetros

  • I0
    A identificação da interface zeroth.(Obrigatório)

  • I1
    A primeira identificação de interface.(Opcional)

  • I2
    A segunda ID de interface.(Opcional)

  • I3
    O terceiro ID de interface.(Opcional)

  • I4
    O quarto ID de interface.(Opcional)

  • I5
    O quinto ID de interface.(Opcional)

  • I6
    O sexto ID de interface.(Opcional)

  • I7
    O sétimo ID de interface.(Opcional)

  • I8
    A identificação de interface do oitavo.(Opcional)

  • I9
    O nono ID de interface.(Opcional)

  • flags
    Sinalizadores de configuração para a classe.Um ou mais RuntimeClassType enumerações que são especificadas em um RuntimeClassFlags estrutura.

Comentários

Deriva da lista de interfaces especificadas e implementa os modelos de auxiliar para QueryInterface e GetIid.

Cada I0 por meio de I9 parâmetro interface deve derivar de ambos IUnknown, IInspectable, ou o ChainInterfaces modelo.O flags parâmetro determina se o suporte é gerado para IUnknown ou IInspectable.

Membros

BR230423.collapse_all(pt-br,VS.110).gifDefinições de tipo públicas

Nome

Descrição

ClassFlags

Um sinônimo de RuntimeClassFlags<WinRt>.

BR230423.collapse_all(pt-br,VS.110).gifMétodos protegidos

Nome

Descrição

Método Implements::CanCastTo

Obtém um ponteiro para a interface especificada.

Método Implements::CastToUnknown

Obtém um ponteiro para a interface IUnknown subjacente.

Método Implements::FillArrayWithIid

Insere a identificação da interface especificada pelo parâmetro do modelo atual do zeroth para o elemento da matriz especificada.

BR230423.collapse_all(pt-br,VS.110).gifConstantes protegidos

Nome

Descrição

Constante de Implements::IidCount

Contém o número de identificações de interface implementada.

Hierarquia de herança

I0

ChainInterfaces

I0

ImplementsBase

ImplementsHelper

Implements

Requisitos

Cabeçalho: implements.h

Namespace: Microsoft::WRL

Consulte também

Referência

Namespace Microsoft::WRL