InvokeHelper

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值