Aracılığıyla paylaş


CComCachedTearOffObject Sınıfı

Uyarı

Etkin Şablon Kitaplığı (ATL) desteklenmeye devam eder. Ancak artık özellik eklemeyeceğiz veya belgeleri güncelleştirmeyeceğiz.

Bu sınıf, bir koparma arabirimi için IUnknown uygular.

Sözdizimi

template
<class contained>
class CComCachedTearOffObject : public
    IUnknown,
public CComObjectRootEx<contained
::_ThreadModel::ThreadModelNoCS>

Parametreler

Bulunan
Ve'den CComTearOffObjectBase türetilen ve koparma nesnenizin desteklemesini istediğiniz arabirimler olan koparma sınıfınız.

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
CComCachedTearOffObject::CComCachedTearOffObject Oluşturucu.
CComCachedTearOffObject::~CComCachedTearOffObject Yok edici.

Genel Yöntemler

Veri Akışı Adı Açıklama
CComCachedTearOffObject::AddRef Bir CComCachedTearOffObject nesne için başvuru sayısını artırır.
CComCachedTearOffObject::FinalConstruct m_contained::FinalConstruct (tear-off sınıfı' yöntemini) çağırır.
CComCachedTearOffObject::FinalRelease m_contained::FinalRelease (tear-off sınıfı' yöntemini) çağırır.
CComCachedTearOffObject::QueryInterface Nesnenin IUnknownCComCachedTearOffObject işaretçisini veya koparma sınıfınızdaki (sınıfı contained) istenen arabirime bir işaretçi döndürür.
CComCachedTearOffObject::Release Bir CComCachedTearOffObject nesne için başvuru sayısını azalan ve başvuru sayısı 0 ise yok eder.

Ortak Veri Üyeleri

Veri Akışı Adı Açıklama
CComCachedTearOffObject::m_contained CComContainedObject Tear-off sınıfınızdan (sınıfıcontained) türetilen bir nesne.

Açıklamalar

CComCachedTearOffObject bir kopma arabirimi için IUnknown uygular. Bu sınıf, sahip nesnesinin CComTearOffObjectCComCachedTearOffObject nesnesinden ayrı olarak kendi IUnknownöğesine sahip olan öğesinden IUnknown farklıdır (sahip, yırtılma işleminin oluşturulduğu nesnedir). CComCachedTearOffObject kendi başvuru sayısını korur ve başvuru sayısı IUnknown sıfır olduğunda kendisini siler. Ancak, herhangi bir koparma arabirimlerini sorgularsanız, sahip nesnenin IUnknown başvuru sayısı artırılır.

CComCachedTearOffObject Koparma uygulayan nesnenin örneği zaten oluşturulmuşsa ve koparma arabirimi yeniden sorgulanıyorsa, aynı CComCachedTearOffObject nesne yeniden kullanılır. Buna karşılık, tarafından uygulanan CComTearOffObject bir koparma arabirimi yine sahip nesnesi aracılığıyla sorgulanırsa, başka bir CComTearOffObject örnek oluşturulur.

Sahip sınıfı, için önbelleğe alınmış FinalReleaseReleaseolan öğesini uygulamalı IUnknown ve çağırmalıdır CComCachedTearOffObject ve bu da başvuru sayısını azaltmalıdır. Bu, 'nin CComCachedTearOffObject çağrılmasına ve yırtılma işleminin silinmesine neden FinalReleaseolur.

Devralma Hiyerarşisi

CComObjectRootBase

CComObjectRootEx

IUnknown

CComCachedTearOffObject

Gereksinimler

Üst bilgi: atlcom.h

CComCachedTearOffObject::AddRef

Nesnenin başvuru sayısını CComCachedTearOffObject 1 artırır.

STDMETHOD_(ULONG, AddRef)();

Dönüş Değeri

Tanılama ve test için yararlı olabilecek bir değer.

CComCachedTearOffObject::CComCachedTearOffObject

Oluşturucu.

CComCachedTearOffObject(void* pv);

Parametreler

Pv
[in] öğesinin IUnknown işaretçisi CComCachedTearOffObject.

Açıklamalar

m_contained üyeyi CComContainedObjectbaşlatır.

CComCachedTearOffObject::~CComCachedTearOffObject

Yok edici.

~CComCachedTearOffObject();

Açıklamalar

Ayrılan tüm kaynakları serbest ve FinalRelease'ı çağırır.

CComCachedTearOffObject::FinalConstruct

oluşturma çağrılarım_contained::FinalConstruct,m_containedCComContainedObject<contained tear-off sınıfınız tarafından uygulanan arabirime erişmek için kullanılan nesne.>

HRESULT FinalConstruct();

Dönüş Değeri

Standart bir HRESULT değeri.

CComCachedTearOffObject::FinalRelease

nesnesini serbestm_contained::FinalReleasem_containedCComContainedObject<containedolarak çağırır.>

void FinalRelease();

CComCachedTearOffObject::m_contained

Tear-off sınıfınızdan türetilen bir CComContainedObject nesnesi.

CcomContainedObject <contained> m_contained;

Parametreler

Bulunan
[in] Ve'den CComTearOffObjectBase türetilen ve koparma nesnenizin desteklemesini istediğiniz arabirimler olan koparma sınıfınız.

Açıklamalar

Devralınan yöntemler m_contained , önbelleğe alınan yırtılma nesnesinin QueryInterface, FinalConstructve FinalReleasearacılığıyla yırtılma sınıfınızdaki yırtılma arabirimine erişmek için kullanılır.

CComCachedTearOffObject::QueryInterface

İstenen arabirim için bir işaretçi alır.

STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);

Parametreler

iid
[in] İstenen arabirimin GUID'i.

ppvObject
[out] iid tarafından tanımlanan arabirim işaretçisi işaretçisi veya arabirim bulunamazsa NULL.

Dönüş Değeri

Standart bir HRESULT değeri.

Açıklamalar

İstenen arabirim iseIUnknown, 'nin kendi CComCachedTearOffObject işaretçisini IUnknowndöndürür ve başvuru sayısını artırır. Aksi takdirde, içinden devralınan InternalQueryInterfaceCComObjectRootExtear-off sınıfınızdaki arabirimi sorgular.

CComCachedTearOffObject::Release

Başvuru sayısını 1'e kadar siler ve başvuru sayısı 0 ise nesneyi siler CComCachedTearOffObject .

STDMETHOD_(ULONG, Release)();

Dönüş Değeri

Hata ayıklama olmayan derlemelerde her zaman 0 döndürür. Hata ayıklama derlemelerinde, tanılama veya test için yararlı olabilecek bir değer döndürür.

Ayrıca bkz.

CComTearOffObject Sınıfı
CComObjectRootEx Sınıfı
Sınıfa Genel Bakış