美文网首页
IInterface - C++ Builder

IInterface - C++ Builder

作者: 玄坴 | 来源:发表于2020-05-22 13:12 被阅读0次

    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

    相关文章

      网友评论

          本文标题:IInterface - C++ Builder

          本文链接:https://www.haomeiwen.com/subject/gudnnhtx.html