InterfaceTraits Yapısı
WRL altyapısını destekler ve doğrudan kodunuzdan kullanılmak üzere tasarlanmamıştır.
Sözdizimi
template<typename I0>
struct __declspec(novtable) InterfaceTraits;
template<typename CloakedType>
struct __declspec(novtable) InterfaceTraits<
CloakedIid<CloakedType>
>;
template<>
struct __declspec(novtable) InterfaceTraits<Nil>;
Parametreler
I0
Arabirimin adı.
CloakedType
, RuntimeClass
Implements
ve ChainInterfaces
için, desteklenen arabirim kimlikleri listesinde yer almayacak bir arabirim.
Açıklamalar
Bir arabirimin ortak özelliklerini uygular.
İkinci şablon, gizlenmiş arabirimler için bir özelleştirmedir. Üçüncü şablon, Nil parametreleri için bir uzmanlıktır.
Üyeler
Genel Tür Tanımları
Veri Akışı Adı | Açıklama |
---|---|
Base |
I0 şablon parametresinin eş anlamlısı. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
InterfaceTraits::CanCastTo | Belirtilen işaretçinin işaretçiye Base atanıp alınamayacağını gösterir. |
InterfaceTraits::CastToBase | Belirtilen işaretçiyi işaretçiye alır Base . |
InterfaceTraits::CastToUnknown | Belirtilen işaretçiyi işaretçiye alır IUnknown . |
InterfaceTraits::FillArrayWithIid | arabirim kimliğini Base dizin bağımsız değişkeni tarafından belirtilen dizi öğesine atar. |
InterfaceTraits::Verify | Bunun doğru türetildiğini doğrular Base . |
Genel Sabitler
Veri Akışı Adı | Açıklama |
---|---|
InterfaceTraits::IidCount | Geçerli InterfaceTraits nesneyle ilişkili arabirim kimliklerinin sayısını tutar. |
Devralma Hiyerarşisi
InterfaceTraits
Gereksinimler
Üst bilgi: implements.h
Ad Alanı: Microsoft::WRL::D etails
InterfaceTraits::CanCastTo
WRL altyapısını destekler ve doğrudan kodunuzdan kullanılmak üzere tasarlanmamıştır.
template<typename T>
static __forceinline bool CanCastTo(
_In_ T* ptr,
REFIID riid,
_Deref_out_ void **ppv
);
Parametreler
ptr
Türün işaretçisinin adı.
riid
arabirim kimliği Base
.
ppv
Bu işlem başarılı olursa, ppv tarafından Base
belirtilen arabirime işaret eder. Aksi takdirde ppv olarak ayarlanırnullptr
.
Dönüş Değeri
true
bu işlem başarılı olursa ve ptr bir işaretçiye Base
atılırsa; aksi takdirde, false
.
Açıklamalar
Belirtilen işaretçinin işaretçiye Base
atanıp alınamayacağını gösterir.
hakkında Base
daha fazla bilgi için Genel Tür Tanımları bölümüne bakın.
InterfaceTraits::CastToBase
WRL altyapısını destekler ve doğrudan kodunuzdan kullanılmak üzere tasarlanmamıştır.
template<typename T>
static __forceinline Base* CastToBase(
_In_ T* ptr
);
Parametreler
T
Parametre ptr türü.
ptr
T türü işaretçisi.
Dönüş Değeri
için bir işaretçi Base
.
Açıklamalar
Belirtilen işaretçiyi işaretçiye alır Base
.
hakkında Base
daha fazla bilgi için Genel Tür Tanımları bölümüne bakın.
InterfaceTraits::CastToUnknown
WRL altyapısını destekler ve doğrudan kodunuzdan kullanılmak üzere tasarlanmamıştır.
template<typename T>
static __forceinline IUnknown* CastToUnknown(
_In_ T* ptr
);
Parametreler
T
Parametre ptr türü.
ptr
T türüne işaret eden işaretçi.
Dönüş Değeri
Türetilen IUnknown Base
işaretçisi.
Açıklamalar
Belirtilen işaretçiyi işaretçiye alır IUnknown
.
hakkında Base
daha fazla bilgi için Genel Tür Tanımları bölümüne bakın.
InterfaceTraits::FillArrayWithIid
WRL altyapısını destekler ve doğrudan kodunuzdan kullanılmak üzere tasarlanmamıştır.
__forceinline static void FillArrayWithIid(
_Inout_ unsigned long &index,
_In_ IID* iids
);
Parametreler
Dizin
Sıfır tabanlı dizin değeri içeren bir alanın işaretçisi.
iid'ler
Arabirim kimlikleri dizisi.
Açıklamalar
arabirim kimliğini Base
dizin bağımsız değişkeni tarafından belirtilen dizi öğesine atar.
Bu API'nin adının aksine, yalnızca bir dizi öğesi değiştirilir; dizinin tamamını değil.
hakkında Base
daha fazla bilgi için Genel Tür Tanımları bölümüne bakın.
InterfaceTraits::IidCount
WRL altyapısını destekler ve doğrudan kodunuzdan kullanılmak üzere tasarlanmamıştır.
static const unsigned long IidCount = 1;
Açıklamalar
Geçerli InterfaceTraits
nesneyle ilişkili arabirim kimliklerinin sayısını tutar.
InterfaceTraits::Verify
WRL altyapısını destekler ve doğrudan kodunuzdan kullanılmak üzere tasarlanmamıştır.
__forceinline static void Verify();
Açıklamalar
Bunun doğru türetildiğini doğrular Base
.
hakkında Base
daha fazla bilgi için Genel Tür Tanımları bölümüne bakın.