ImplementsHelper — Struktura

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

Składnia

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

Parametry

RuntimeClassFlagsT
Pole flag, które określa co najmniej jeden moduł wyliczający RuntimeClassType .

ILst
Lista identyfikatorów interfejsów.

IsDelegateToClass
Określ true , czy bieżące wystąpienie Implements klasy jest klasą bazową pierwszego identyfikatora interfejsu w języku ILst; w przeciwnym razie false.

Uwagi

Pomaga zaimplementować strukturę Implements .

Ten szablon przechodzi przez listę interfejsów i dodaje je jako klasy podstawowe oraz informacje niezbędne do włączenia programu QueryInterface.

Członkowie

Metody chronione

Nazwa/nazwisko opis
ImplementsHelper::CanCastTo Pobiera wskaźnik do określonego identyfikatora interfejsu.
ImplementsHelper::CastToUnknown Pobiera wskaźnik do bazowego IUnknown interfejsu dla bieżącej Implements struktury.
ImplementsHelper::FillArrayWithIid Wstawia identyfikator interfejsu określony przez bieżący parametr szablonu zeroth do określonego elementu tablicy.
ImplementsHelper::IidCount Przechowuje liczbę zaimplementowanych identyfikatorów interfejsu w bieżącym Implements obiekcie.

Hierarchia dziedziczenia

ImplementsHelper

Wymagania

Nagłówek: implements.h

Przestrzeń nazw: Microsoft::WRL::D etails

ImplementsHelper::CanCastTo

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

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

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

Parametry

Riid
Odwołanie do identyfikatora interfejsu.

Ppv
Jeśli ta operacja zakończy się pomyślnie, wskaźnik do interfejsu określonego przez riid lub iid.

Iid
Odwołanie do identyfikatora interfejsu.

Wartość zwracana

S_OK w przypadku powodzenia; w przeciwnym razie hrESULT wskazujący błąd.

Uwagi

Pobiera wskaźnik do określonego identyfikatora interfejsu.

ImplementsHelper::CastToUnknown

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

IUnknown* CastToUnknown();

Wartość zwracana

Wskaźnik do bazowego IUnknown interfejsu.

Uwagi

Pobiera wskaźnik do bazowego IUnknown interfejsu dla bieżącej Implements struktury.

ImplementsHelper::FillArrayWithIid

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

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

Parametry

Indeks
Indeks oparty na zera, który wskazuje początkowy element tablicy dla tej operacji. Po zakończeniu tej operacji indeks jest zwiększany o 1.

identyfikatory
Tablica typu IDENTYFIKATORy IID.

Uwagi

Wstawia identyfikator interfejsu określony przez bieżący parametr szablonu zeroth do określonego elementu tablicy.

ImplementsHelper::IidCount

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

static const unsigned long IidCount;

Uwagi

Przechowuje liczbę zaimplementowanych identyfikatorów interfejsu w bieżącym Implements obiekcie.