加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

InvokeHelper

发布时间:2020-12-16 23:25:13 所属栏目:大数据 来源:网络整理
导读:COM的基本原理是C++的虚函数,也就是vtable. 所谓的二进制兼容就是通过虚函数的调用来达到,因为 各个C++厂商的vtable的结构基本上是一样的。但是对于 vb等这样没有虚函数概念的软件,提供了一个自动化的 接口。在vb里面只需要实现一段代码,可以调用这个接

COM的基本原理是C++的虚函数,也就是vtable. 所谓的二进制兼容就是通过虚函数的调用来达到,因为 各个C++厂商的vtable的结构基本上是一样的。但是对于 vb等这样没有虚函数概念的软件,提供了一个自动化的 接口。在vb里面只需要实现一段代码,可以调用这个接口 ,那么通过这个接口我就可以调用许多其他人开发的东西, 否则,vb其不对于每一个class factory,都要实现一段代码 来调用其他函数的接口,对于vb来说,这样既不现实也不可能, 因为不知道com的接口排列。试想一下在vc中,如果 其他人不告诉你这个com接口的定义,你能够使用它吗。通过IDispatch 来定义接口的布局,调用它的函数通过IDispatch中的Invoker来实现, Invoker怎样调用虚函数是你自己内部的事情,vb只需要invoker我想要的 函数就可以了。避免了其它不支持虚函数的语言为了调用com而必须加入 虚函数的功能。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读