Partager via


Implements, structure

Implémente QueryInterface et GetIid pour les interfaces spécifiées.

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;

Paramètres

  • I0
    Le zérotième ID d'interface. (Obligatoire)

  • I1
    Le premier ID d'interface. (facultatif)

  • I2
    Le deuxième ID d'interface. (facultatif)

  • I3
    Le troisième ID d'interface. (facultatif)

  • I4
    Quatrième ID d'interface. (facultatif)

  • I5
    Le cinquième ID d'interface. (facultatif)

  • I6
    Le sixième ID d'interface. (facultatif)

  • I7
    Le septième ID d'interface. (facultatif)

  • I8
    Huitième ID d'interface. (facultatif)

  • I9
    Le neuvième ID d'interface. (facultatif)

  • flags
    Indicateurs de configuration pour la classe. Un ou plusieurs énumérations de RuntimeClassType spécifiées dans une structure de RuntimeClassFlags.

Remarques

Dérive de la liste d'interfaces spécifiées et implémente les modèles d'assistance pour QueryInterface et GetIid.

Chaque I0 via le paramètre d'interface I9 doit dériver d'IUnknown, IInspectable, ou du modèle ChainInterfaces. Le paramètre flags détermine si la prise en charge est généré pour IUnknown ou IInspectable.

Membres

Typedefs publics

Nom

Description

ClassFlags

Un synonyme de RuntimeClassFlags<WinRt>.

Méthodes protégées

Nom

Description

Implements::CanCastTo, méthode

Obtient un pointeur vers l'interface spécifiée.

Implements::CastToUnknown, méthode

Obtient un pointeur vers l'interface IUnknown sous-jacente.

Implements::FillArrayWithIid, méthode

Insère l'ID d'interface spécifié par le zérotième paramètre de modèle actuel dans l'élément de tableau spécifié.

Constantes protégées

Nom

Description

Implements::IidCount, constante

Contient le nombre d'IDs d'interface implémentés.

Hiérarchie d'héritage

I0

ChainInterfaces

I0

ImplementsBase

ImplementsHelper

Implements

Configuration requise

En-tête : implements.h

Espace de noms : Microsoft::WRL

Voir aussi

Référence

Microsoft::WRL, espace de noms