CComContainedObject 클래스

이 클래스는 소유자 개체의 IUnknown에 위임하여 IUnknown을 구현합니다.

Important

이 클래스와 해당 멤버는 Windows 런타임에서 실행되는 애플리케이션에서 사용할 수 없습니다.

구문

template<class Base>
class CComContainedObject : public Base

매개 변수

Base
CComObjectRoot 또는 CComObjectRootEx에서 파생된 클래스입니다.

멤버

공용 생성자

속성 설명
CComContainedObject::CComContainedObject 생성자입니다. 소유자 개체의 멤버 포인터를 초기화합니다 IUnknown.
CComContainedObject::~CComContainedObject 소멸자입니다.

공용 메서드

이름 설명
CComContainedObject::AddRef 소유자 개체에 대한 참조 수를 증분합니다.
CComContainedObject::GetControllingUnknown 소유자 개체의 IUnknown.를 검색합니다.
CComContainedObject::QueryInterface 소유자 개체에 요청된 인터페이스에 대한 포인터를 검색합니다.
CComContainedObject::Release 소유자 개체의 참조 수를 줄입니다.

설명

ATL은 CComAggObject, CComPolyObjectCComCachedTearOffObject 클래스에서 사용합니다 CComContainedObject . CComContainedObject소유자 개체의 IUnknown를 위임하여 IUnknown을 구현합니다. (소유자는 집계의 외부 개체이거나 분리 인터페이스를 만드는 개체입니다.) CComContainedObject 를 통해 상속된 Base's OuterQueryInterfaceOuterAddRef, 및 OuterRelease,를 호출CComObjectRootEx합니다.

상속 계층 구조

Base

CComContainedObject

요구 사항

헤더: atlcom.h

CComContainedObject::AddRef

소유자 개체에 대한 참조 수를 증분합니다.

STDMETHOD_(ULONG, AddRef)();

Return Value

진단 또는 테스트에 유용할 수 있는 값입니다.

CComContainedObject::CComContainedObject

생성자입니다.

CComContainedObject(void* pv);

매개 변수

pv
[in] 소유자 개체의 IUnknown.

설명

멤버 포인터(클래스를 m_pOuterUnknown Base 통해 상속됨)를 pv설정합니다.

CComContainedObject::~CComContainedObject

소멸자입니다.

~CComContainedObject();

설명

할당된 모든 리소스를 해제합니다.

CComContainedObject::GetControllingUnknown

소유자 개체를 m_pOuterUnknown 포함하는 멤버 포인터(기본 클래스를 통해 상속됨)를 반환합니다IUnknown.

IUnknown* GetControllingUnknown();

Return Value

소유자 개체의 IUnknown.

설명

BaseDECLARE_GET_CONTROLLING_UNKNOWN 매크로를 선언한 경우 이 메서드는 virtual 일 수 있습니다.

CComContainedObject::QueryInterface

소유자 개체에 요청된 인터페이스에 대한 포인터를 검색합니다.

STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);
template <class Q>
HRESULT STDMETHODCALLTYPE QueryInterface(Q** pp);

매개 변수

iid
[in] 요청되는 인터페이스의 식별자입니다.

ppvObject
[out] iid로 식별되는 인터페이스 포인터에 대한 포인터입니다. 개체가 이 인터페이스 를 지원하지 않으면 ppvObject 가 NULL로 설정됩니다.

pp
[out] 형식 Q으로 식별되는 인터페이스 포인터에 대한 포인터입니다. 개체가 이 인터페이스 를 지원하지 않는 경우 pp 는 NULL로 설정됩니다.

Return Value

표준 HRESULT 값입니다.

CComContainedObject::Release

소유자 개체의 참조 수를 줄입니다.

STDMETHOD_(ULONG, Release)();

Return Value

디버그 빌드 Release 에서 진단 또는 테스트에 유용할 수 있는 값을 반환합니다. 디버그가 아닌 빌드에서는 항상 0을 반환합니다 Release .

참고 항목

클래스 개요