_com_ptr_t 类
Microsoft 专用
_com_ptr_t 对象封装 COM 接口指针,被称为“智能”指针。 此模板类通过对 IUnknown 成员函数的函数调用来管理资源分配和解除分配:QueryInterface、AddRef 和 Release。
智能指针通常由 _COM_SMARTPTR_TYPEDEF 宏提供的 typedef 定义引用。 此宏采用接口名称和 IID,并利用接口名称与后缀 Ptr 声明 _com_ptr_t 的专用化。 例如:
_COM_SMARTPTR_TYPEDEF(IMyInterface, __uuidof(IMyInterface));
声明 _com_ptr_t 专用化 IMyInterfacePtr。
函数模板集(而非模板类的成员)支持与比较运算符右侧的智能指针进行比较。
构造
构造 _com_ptr_t 对象。 |
低级别运算
调用封装的接口指针上的 IUnknown 的 AddRef 成员函数。 |
|
封装此智能指针的类型的原始接口指针。 |
|
创建一个给定了 CLSID 或 ProgID 的对象的新实例。 |
|
提取并返回封装的接口指针。 |
|
根据 CLSID 或 ProgID 附加到一个对象的现有实例。 |
|
返回封装的接口指针。 |
|
调用封装的接口指针上的 IUnknown 的 QueryInterface 成员函数。 |
|
调用封装的接口指针上的 IUnknown 的 Release 成员函数。 |
运算符
将新值赋给现有 _com_ptr_t 对象。 |
|
将智能指针对象与另一个智能指针、原始接口指针或 NULL 进行比较。 |
|
提取封装的 COM 接口指针。 |
要求
**标题:**comip.h
**Lib:**comsuppw.lib 或 comsuppwd.lib(有关详细信息,请参阅 /Zc:wchar_t(wchar_t 是本机类型))