DECLARE_IUNKNOWN
[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Pengambilan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine , dan Pengambilan Audio/Video di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]
Makro DECLARE_IUNKNOWN mendeklarasikan tiga metode antarmuka dasar untuk antarmuka baru.
Sintaks
#define DECLARE_IUNKNOWN \
STDMETHODIMP QueryInterface(REFIID riid, void **ppv) { \
return GetOwner()->QueryInterface(riid,ppv); \
}; \
STDMETHODIMP_(ULONG) AddRef() { \
return GetOwner()->AddRef(); \
}; \
STDMETHODIMP_(ULONG) Release() { \
return GetOwner()->Release(); \
};
Keterangan
Saat Anda membuat antarmuka baru, antarmuka tersebut harus berasal dari IUnknown, yang memiliki tiga metode: QueryInterface, AddRef, dan Release. Makro ini menyederhanakan proses deklarasi dengan mendeklarasikan masing-masing metode ini untuk antarmuka baru.
Makro ini hanya berfungsi dengan kelas yang berasal, langsung atau tidak langsung, dari kelas CUnknown .
Persyaratan
Persyaratan | Nilai |
---|---|
Header |
|
Pustaka |
|