Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Específicos de Microsoft
Un objeto _com_ptr_t encapsula un puntero de interfaz COM que se conoce como puntero "inteligente". Esta clase de plantilla administra la asignación y la desasignación de recursos con llamadas de función a las funciones miembro de IUnknown: QueryInterface, AddRef y Release.
Normalmente, la definición de definición de tipo proporcionada por la macro _COM_SMARTPTR_TYPEDEF hace referencia a un puntero inteligente. Esta macro toma un nombre de interfaz y el IID, y declara una especialización de _com_ptr_t con el nombre de la interfaz más un sufijo de Ptr. Por ejemplo:
_COM_SMARTPTR_TYPEDEF(IMyInterface, __uuidof(IMyInterface));
declara la especialización de IMyInterfacePtr.
Un conjunto de plantillas de función, no miembros de esta clase de plantilla, admite comparaciones con un puntero inteligente a la derecha del operador de comparación.
Construcción
| Nombre | Descripción |
|---|---|
| _com_ptr_t | Construye un objeto _com_ptr_t. |
Operaciones de bajo nivel
| Nombre | Descripción |
|---|---|
| AddRef | Llama a la función miembro AddRef de IUnknown en el puntero de interfaz encapsulado. |
| Adjuntar | Encapsula un puntero de interfaz sin formato del tipo de este puntero inteligente. |
| CreateInstance | Crea una nueva instancia de un objeto dado CLSID o ProgID. |
| Separar | Extrae y devuelve el puntero de interfaz encapsulado. |
| GetActiveObject | Se adjunta a una instancia existente de un objeto, dado CLSID o ProgID. |
| GetInterfacePtr | Devuelve el puntero de interfaz encapsulado. |
| QueryInterface | Llama a la función miembro QueryInterface de IUnknown en el puntero de interfaz encapsulado. |
| Versión | Llama a la función miembro Release de IUnknown en el puntero de interfaz encapsulado. |
Operadores
| Nombre | Descripción |
|---|---|
| operator = | Asigna un nuevo valor a un objeto _com_ptr_t existente. |
| operadores ==, !=, <, >, <=, >= | Compare el objeto de puntero inteligente con otro puntero inteligente, puntero de interfaz sin formato o NULL. |
| Extractores | Extrae el puntero de interfaz COM encapsulado. |
FIN de Específicos de Microsoft
Requisitos
Encabezado:<comip.h>
Biblioteca: comsuppw.lib o comsuppwd.lib (vea /Zc:wchar_t (wchar_t es tipo nativo) para obtener más información)