|
当你使用 COM 对象时,请将接口指针包装到适当的智能指针类型中。 活动模板库 (ATL) 针对各种目的定义了多种智能指针。 你还可以使用 _com_ptr_t 智能指针类型,编译器在从 .tlb 文件创建包装器类时会使用该类型。 无需包含 ATL 标头文件时,它是最好的选择。
CComPtr 类
除非你无法使用 ATL,否则使用此类型。 使用 AddRef 和 Release 方法执行引用计数。 有关更多信息,请参阅如何:创建和使用 CComPtr 和 CComQIPtr 实例。
CComQIPtr 类
类似于 CComPtr,但还提供了用于在 COM 对象上调用 QueryInterface 的简化语法。 有关更多信息,请参阅如何:创建和使用 CComPtr 和 CComQIPtr 实例。
CComHeapPtr 类
指向使用 CoTaskMemFree 释放内存的对象的智能指针。
CComGITPtr 类
从全局接口表 (GIT) 获取的接口的智能指针。
_com_ptr_t 类
在功能上类似于 CComQIPtr,但不依赖于 ATL 标头。
|
|