다음을 통해 공유


_com_ptr_t 클래스

Microsoft 전용

A _com_ptr_t 개체 COM 인터페이스 포인터를 캡슐화 하는 "스마트" 포인터 라고 합니다.이 템플릿 클래스 리소스 할당 및 할당 취소 함수 호출을 통해 관리의 IUnknown 멤버 함수: QueryInterface, AddRef, 및 릴리스.

스마트 포인터에서 제공 하는 typedef 정의 일반적으로 참조 되는 _COM_SMARTPTR_TYPEDEF 매크로.이 매크로 인터페이스 이름과 IID 받고 특수화를 선언 _com_ptr_t 인터페이스의 접미사의 이름과 함께 Ptr.예를 들면 다음과 같습니다.

_COM_SMARTPTR_TYPEDEF(IMyInterface, __uuidof(IMyInterface));

선언에서 _com_ptr_t 특화 IMyInterfacePtr.

일련의 함수 템플릿, 클래스 멤버가 템플릿을 않습니다, 지원의 비교에 대 한 스마트 포인터 비교 연산자의 오른쪽에 있습니다.

생성

_com_ptr_t

_com_ptr_t 개체를 생성합니다.

하위 수준 작업

AddRef

호출을 AddRef 멤버 함수를 IUnknown 캡슐화 된 인터페이스 포인터입니다.

연결

이 스마트 포인터 형식의 원시 인터페이스 포인터를 캡슐화합니다.

CreateInstance

제공 된 개체의 새 인스턴스를 만들고는 CLSID 또는 ProgID.

분리

추출 하는 캡슐화 된 인터페이스 포인터를 반환 합니다.

GetActiveObject

개체의 기존 인스턴스에 연결 되어 있는 CLSID 또는 ProgID.

GetInterfacePtr

캡슐화 된 인터페이스 포인터를 반환합니다.

QueryInterface

호출을 QueryInterface 멤버 함수를 IUnknown 캡슐화 된 인터페이스 포인터입니다.

Release

호출을 릴리스 멤버 함수를 IUnknown 캡슐화 된 인터페이스 포인터입니다.

연산자

연산자 =

기존에 새 값을 할당 합니다. _com_ptr_t 개체입니다.

연산자: = =,! =, <>,, < =, > =

스마트 포인터가 개체를 다른 스마트 포인터, 원시 인터페이스 포인터를 비교 하거나 NULL.

추출기

캡슐화 된 COM 인터페이스 포인터를 추출 합니다.

요구 사항

헤더: comip.h

Lib: comsuppw.lib 또는 comsuppwd.lib (참조 하십시오 /Zc:wchar_t(wchar_t를 네이티브 형식으로 인식) 에 대 한 자세한 정보)

참고 항목

참조

컴파일러 COM 지원 클래스