IInterface - C++ Builder

C++ Builder 参考手册IInterface


System::IInterface 是增加了获取智能接口的 IUnknown。

  • System::IInterface 简介
  • System::IInterface 成员

一. System::IInterface 简介

System::IInterface 是增加了获取智能接口的 IUnknown。

  • 继承关系:
    IUnknown
    ⠀╙ System::IInterface
  • 头文件:#include <sysmac.h>
  • 命名空间:System
  • System::IInterface 是继承 IUnknown,在 IUnknown 的基础上,增加了一个 Supports 方法,用于获取 DelphiInterface 模板的智能接口;
  • 可以认为 System::IInterface 就是 IUnknown,他们有同样的 UUID,仅仅是增加了一个 Supports 方法:
__interface INTERFACE_UUID("00000000-0000-0000-C000-000000000046") IInterface : public IUnknown
{
public:
    template <typename T>
    bool Supports(DelphiInterface<T>& smartIntf)
    {
        return QueryInterface(__uuidof(T), reinterpret_cast<void**>(static_cast<T**>(&smartIntf))) == S_OK;
    }
};

二. System::IInterface 成员

成员函数 说明
public:  
Supports 获取 DelphiInterface 模板的智能接口
IUnknown:: 从 IUnknown 继承过来的
public:  
AddRef 增加引用计数
QueryInterface 返回当前组件所支持的 COM 接口的引用
Release 减少引用计数 / 销毁对象

参考:


C++ Builder 参考手册IInterface

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。