Terapkan Struktur
QueryInterface
Mengimplementasikan dan GetIid
untuk antarmuka yang ditentukan.
Sintaks
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;
Parameter
I0
ID antarmuka nol. (Wajib)
I1
ID antarmuka pertama. (Opsional)
I2
ID antarmuka kedua. (Opsional)
I3
ID antarmuka ketiga. (Opsional)
I4
ID antarmuka keempat. (Opsional)
I5
ID antarmuka kelima. (Opsional)
I6
ID antarmuka keenam. (Opsional)
I7
ID antarmuka ketujuh. (Opsional)
I8
ID antarmuka kedelapan. (Opsional)
I9
ID antarmuka kesembilan. (Opsional)
flags
Bendera konfigurasi untuk kelas . Satu atau beberapa enumerasi RuntimeClassType yang ditentukan dalam struktur RuntimeClassFlags .
Keterangan
Berasal dari daftar antarmuka yang ditentukan dan mengimplementasikan templat pembantu untuk QueryInterface
dan GetIid
.
Setiap parameter antarmuka I0 hingga I9 harus berasal dari IUnknown
, , IInspectable
atau templat ChainInterfaces . Parameter bendera menentukan apakah dukungan dihasilkan untuk IUnknown
atau IInspectable
.
Anggota
Typedef Publik
Nama | Deskripsi |
---|---|
ClassFlags |
Sinonim untuk RuntimeClassFlags<WinRt> . |
Metode yang Dilindungi
Nama | Deskripsi |
---|---|
Implementasi::CanCastTo | Mendapatkan penunjuk ke antarmuka yang ditentukan. |
Implementasi::CastToUnknown | Mendapatkan penunjuk ke antarmuka yang mendasar IUnknown . |
Implementasi::FillArrayWithIid | Menyisipkan ID antarmuka yang ditentukan oleh parameter templat nol saat ini ke dalam elemen array yang ditentukan. |
Konstanta Terproteksi
Nama | Deskripsi |
---|---|
Implementasi::IidCount | Menyimpan jumlah ID antarmuka yang diimplementasikan. |
Hierarki Warisan
I0
ChainInterfaces
I0
ImplementsBase
ImplementsHelper
Implements
Persyaratan
Header: implements.h
Namespace: Microsoft::WRL
Implementasi::CanCastTo
Mendapatkan penunjuk ke antarmuka yang ditentukan.
__forceinline HRESULT CanCastTo(
REFIID riid,
_Deref_out_ void **ppv
);
Parameter
riid
Referensi ke ID antarmuka.
Ppv
Jika berhasil, penunjuk ke antarmuka yang ditentukan oleh riid.
Tampilkan Nilai
S_OK jika berhasil; jika tidak, HRESULT yang menunjukkan kesalahan, seperti E_NOINTERFACE.
Keterangan
Ini adalah fungsi pembantu internal yang melakukan operasi QueryInterface.
Implementasi::CastToUnknown
Mendapatkan penunjuk ke antarmuka yang mendasar IUnknown
.
__forceinline IUnknown* CastToUnknown();
Tampilkan Nilai
Operasi ini selalu berhasil dan mengembalikan IUnknown
penunjuk.
Keterangan
Fungsi pembantu internal.
Implementasi::FillArrayWithIid
Menyisipkan ID antarmuka yang ditentukan oleh parameter templat nol saat ini ke dalam elemen array yang ditentukan.
__forceinline static void FillArrayWithIid(
unsigned long &index,
_In_ IID* iids
);
Parameter
index
Indeks berbasis nol yang menunjukkan elemen array awal untuk operasi ini. Ketika operasi ini selesai, indeks bertambah 1.
iids
Array jenis IID.
Keterangan
Fungsi pembantu internal.
Implementasi::IidCount
Menyimpan jumlah ID antarmuka yang diimplementasikan.
static const unsigned long IidCount;
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk