如果你从头读过:
COM原理与应用(潘SIR)、COM本质论(DAN BOX)就明白了。
接口实际上是软件之间进行通讯、交互的桥梁、规范!实现一个接口就
意味着实现了功能,就可以和其他组件、系统合作,多接口存在意义就是
提供更多的处理能力(如果你实现的话)
个人理解,仅供参考。
COM原理与应用(潘SIR)、COM本质论(DAN BOX)就明白了。
接口实际上是软件之间进行通讯、交互的桥梁、规范!实现一个接口就
意味着实现了功能,就可以和其他组件、系统合作,多接口存在意义就是
提供更多的处理能力(如果你实现的话)
个人理解,仅供参考。
解决方案 »
- MFC还是WPF?还是其他的
- 请问一个发送TCP报的问题?
- 多文档程序中,为什么在某个界面的PreTranslateMessage函数中截获不了WM_ACTIVATE消息?
- 关于文件读入的一个小问题
- 为什么不能直接生成CObject的派生类??
- 如何枚举到系统语言啊?把所有的语言都枚举到LIST中。
- 新手请教,vc基本问题
- 请教如何读出clistctrl中的某一行某一列上的值
- 为什么我的程序会退出?????
- 我写了一个工作线程是打开txt文档然后逐行发送出去,在发送按钮的消息处理函数里调用这个线程编译成功,就是出现卡死的现象。
- 请教生成Vxd程序的详细步骤
- 如何让COM返回一个自定义的类实例(对象)?
另外,在COM+环境中,COM是可以有状态的,COM的生存期不是简单的由引用计数来决定。因为在分布式环境中,要虑到客户端异常,中断连接的情况。“闲置”的COM(虽然引用计数不用0)系统仍然可以释放它以节约系统资源。在这种情况下,多接口情况下的状态保存比单接口要复杂得多。
)
该书第五章是com概述,很简洁,很容易理解!你能找到很好的解释!
也借此向大家推荐这本好书!
David chappell的书通俗易懂
《understanding .net:a tutorial and analysis》
Don box
《essential .net: the clr》期盼着两本书的引进!
)
该书第五章是com概述,很简洁,很容易理解!你能找到很好的解释!
也借此向大家推荐这本好书!
David chappell的书通俗易懂
《understanding .net:a tutorial and analysis》
Don box
《essential .net: the clr》期盼着两本书的引进!
接口时访问实例的方法,实例可以有一个也可以有多个接口,这要看具体的COM类
是怎么实现的。多接口有很多存在的意义,如为不同的环境提供不同的使用方式,
为兼容以前的旧版再扩充新的功能等等。多接口怎么说呢,用C++来解释,一个接口就是一个特殊的纯虚基类,然后,某些
实现多接口的COM类就是一个继承了多个虚基类(接口)的子类。你可以对这个子类
的实例用它的任何虚基类(接口)来调用他的功能。现在经常用到的双接口就是多接口的一个典型,目前多数COM都提供双接口,可以
在不同的场合、环境中使用不同的接口,但是并不代表双接口的构件,每使用一
个借口,就会构造一个新的实例。
To XiDao(小刀):
我并不是说访问不同接口要创建不同的实例,而是指多接口的实现类会有更多的数据成员,用户在使用其中一个接口的并不需要访问其中某些成员。
1: 用C++实现的自然
2: 平滑维持组件的生命力
虽然,我说的可能和权威说的不太一样,但我想意思应该是这样的。:-))
再问一个:对于一个com+对象,在asp中怎样调用不同的接口?
VB,JAVA是不支持指针,但是不代表他们只能调用IDispatch接口,他们一样可以调用
vtable类型的接口的。而且特别是java 先天就对vtable类型接口支持的好。只有asp中的脚本语言不能调用vtable接口类型,COM类一定要实现IDispatch接口,或
双接口,asp才能调用。
学习中.........
他要求接口不变性以免客户端瘫痪,所以只能再加一个新的接口,然后以后再升级客户端,
第三就是作为聚合模型使用,其实这不算是多接口,只是将其他的组件的接口直接暴露给用户而已,本质就是完全的二进制重用.