Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Microsoft Specific
A _com_ptr_t object encapsulates a COM interface pointer and is called a “smart” pointer. This template class manages resource allocation and deallocation, via function calls to the IUnknown member functions: QueryInterface, AddRef, and Release.
A smart pointer is usually referenced by the typedef definition provided by the _COM_SMARTPTR_TYPEDEF macro. This macro takes an interface name and the IID, and declares a specialization of _com_ptr_t with the name of the interface plus a suffix of Ptr. For example,
_COM_SMARTPTR_TYPEDEF(IMyInterface, __uuidof(IMyInterface));
declares the _com_ptr_t specialization IMyInterfacePtr.
A set of function templates, not members of this template class, support comparisons with a smart pointer on the right-hand side of the comparison operator.
#include <comdef.h>
Compiler COM Support Class Overview
Construction
_com_ptr_t | Constructs a _com_ptr_t object. |
Low-level Operations
AddRef | Calls the AddRef member function of IUnknown on the encapsulated interface pointer. |
Attach | Encapsulates a raw interface pointer of this smart pointer’s type. |
CreateInstance | Creates a new instance of an object given a CLSID or ProgID. |
Detach | Extracts and returns the encapsulated interface pointer. |
GetActiveObject | Attaches to an existing instance of an object given a CLSID or ProgID. |
GetInterfacePtr | Returns the encapsulated interface pointer. |
QueryInterface | Calls the QueryInterface member function of IUnknown on the encapsulated interface pointer. |
Release | Calls the Release member function of IUnknown on the encapsulated interface pointer. |
Operators
operator = | Assigns a new value to an existing _com_ptr_t object. |
operators ==, !=, <, >, <=, >= | Compare the smart pointer object to another smart pointer, raw interface pointer, or NULL. |
Extractors | Extract the encapsulated COM interface pointer. |
END Microsoft Specific