Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Kelas ini mengimplementasikan IUnknown dengan mendelegasikan ke objek IUnknownpemilik .
Penting
Kelas ini dan anggotanya tidak dapat digunakan dalam aplikasi yang dijalankan di Windows Runtime.
Sintaks
template<class Base>
class CComContainedObject : public Base
Parameter
Dasar
Kelas Anda, berasal dari CComObjectRoot atau CComObjectRootEx.
Anggota
Konstruktor Publik
| Nama | Deskripsi |
|---|---|
| CComContainedObject::CComContainedObject | Konstruktor. Menginisialisasi penunjuk anggota ke objek IUnknownpemilik . |
| CComContainedObject::~CComContainedObject | Destruktor. |
Metode Publik
| Nama | Deskripsi |
|---|---|
| CComContainedObject::AddRef | Menaikkan jumlah referensi pada objek pemilik. |
| CComContainedObject::GetControllingUnknown | Mengambil objek IUnknownpemilik . |
| CComContainedObject::QueryInterface | Mengambil penunjuk ke antarmuka yang diminta pada objek pemilik. |
| CComContainedObject::Release | Mengurangi jumlah referensi pada objek pemilik. |
Keterangan
ATL menggunakan CComContainedObject di kelas CComAggObject, CComPolyObject, dan CComCachedTearOffObject. CComContainedObjectmengimplementasikan IUnknown dengan mendelegasikan ke objek IUnknownpemilik . (Pemilik adalah objek luar agregasi, atau objek tempat antarmuka air mata dibuat.) CComContainedObject CComObjectRootExpanggilan 's OuterQueryInterface, OuterAddRef, dan OuterRelease, semua diwariskan melalui Base.
Hierarki Warisan
Base
CComContainedObject
Persyaratan
Header: atlcom.h
CComContainedObject::AddRef
Menaikkan jumlah referensi pada objek pemilik.
STDMETHOD_(ULONG, AddRef)();
Tampilkan Nilai
Nilai yang mungkin berguna untuk diagnostik atau pengujian.
CComContainedObject::CComContainedObject
Konstruktor.
CComContainedObject(void* pv);
Parameter
Pv
[di] Objek IUnknownpemilik .
Keterangan
Mengatur penunjuk m_pOuterUnknown anggota (diwarisi melalui Base kelas) ke pv.
CComContainedObject::~CComContainedObject
Destruktor.
~CComContainedObject();
Keterangan
Membebaskan semua sumber daya yang dialokasikan.
CComContainedObject::GetControllingUnknown
Mengembalikan penunjuk m_pOuterUnknown anggota (diwarisi melalui kelas Dasar ) yang menyimpan objek IUnknownpemilik .
IUnknown* GetControllingUnknown();
Tampilkan Nilai
Objek IUnknownpemilik .
Keterangan
Metode ini mungkin virtual jika Base telah mendeklarasikan makro DECLARE_GET_CONTROLLING_UNKNOWN .
CComContainedObject::QueryInterface
Mengambil penunjuk ke antarmuka yang diminta pada objek pemilik.
STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);
template <class Q>
HRESULT STDMETHODCALLTYPE QueryInterface(Q** pp);
Parameter
iid
[di] Pengidentifikasi antarmuka yang diminta.
ppvObject
[out] Penunjuk ke penunjuk antarmuka yang diidentifikasi oleh iid. Jika objek tidak mendukung antarmuka ini, ppvObject diatur ke NULL.
Pp
[out] Penunjuk ke penunjuk antarmuka yang diidentifikasi berdasarkan jenis Q. Jika objek tidak mendukung antarmuka ini, pp diatur ke NULL.
Tampilkan Nilai
Nilai HRESULT standar.
CComContainedObject::Release
Mengurangi jumlah referensi pada objek pemilik.
STDMETHOD_(ULONG, Release)();
Tampilkan Nilai
Dalam build debug, Release mengembalikan nilai yang mungkin berguna untuk diagnostik atau pengujian. Dalam build non-debug, Release selalu mengembalikan 0.