Bagikan melalui


Kelas CComContainedObject

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.

Lihat juga

Gambaran Umum Kelas