Поделиться через


CComCachedTearOffObject Class

Этот класс реализует IUnknown, запрещены интерфейса.

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

Параметры

  • contained
    Перемещаемый собственный класс, производный от CComTearOffObjectBase и интерфейсы требуется пользовательский перемещаемый объект к поддержке.

Члены

Открытые конструкторы

Имя

Описание

CComCachedTearOffObject::CComCachedTearOffObject

Конструктор.

CComCachedTearOffObject::~CComCachedTearOffObject

Деструктор.

Открытые методы

Имя

Описание

CComCachedTearOffObject::AddRef

Увеличивает счетчик ссылок для объекта CComCachedTearOffObject.

CComCachedTearOffObject::FinalConstruct

Вызывает метод m_contained::FinalConstruct (перемещаемый классов).

CComCachedTearOffObject::FinalRelease

Вызывает метод m_contained::FinalRelease (перемещаемый классов).

CComCachedTearOffObject::QueryInterface

Возвращает указатель на IUnknown объекта CComCachedTearOffObject или на запрашиваемый интерфейс в перемещаемом классе (классе contained).

CComCachedTearOffObject::Release

Уменьшает счетчик ссылок для объекта CComCachedTearOffObject и удаляет его, если счетчик ссылок 0.

Открытые члены данных

Имя

Описание

CComCachedTearOffObject::m_contained

Объект CComContainedObject, производный от класса contained перемещаемые класса ().

Заметки

Средства IUnknownCComCachedTearOffObject, запрещены интерфейса. Этот класс отличается от CComTearOffObject в том, что CComCachedTearOffObject имеет собственное IUnknown, отдельно от IUnknown объекта владельцем (владелец объекта, для которого создается перемещаемое). CComCachedTearOffObject поддерживает собственный счетчика ссылок на своем IUnknown и удаляются после его значение счетчика ссылок равен нулю. Однако при запросе любого из его перемещаемых интерфейсов, то будет увеличивается счетчик ссылок IUnknown объекта владельцем.

Если объект, реализующий CComCachedTearOffObject перемещаемое представляют готовый и перемещаемый интерфейс для вновь запрашивается, то один и тот же объект CComCachedTearOffObject используется повторно. Напротив, если перемещаемый интерфейс, реализованный CComTearOffObject вновь запрашивается для посредством объекта владельцем другой, CComTearOffObject будет создан экземпляр.

Класс владелец должен реализовать FinalRelease и вызвать Выпуск в кэшированном IUnknown для CComCachedTearOffObject, уменьшает его счетчик ссылок. Это приведет к FinalRelease объекта CComCachedTearOffObject вызываться и удаление перемещаемое.

Иерархия наследования

CComObjectRootBase

CComObjectRootEx

IUnknown

CComCachedTearOffObject

Требования

Header: atlcom.h

См. также

Ссылки

CComTearOffObject Class

CComObjectRootEx Class

Другие ресурсы

ATL Class Overview