COM 学习笔记(一)

QueryInterface的实现规则的理解:
1、组件的实例只有一个IUnknown接口。
不管通过实例的哪个接口去查询IUnknown接口时,所得到的均将是同一个指针值
。这样做的目的之一就是保证组件实例所有接口有同一个入口。并且有一个好处
是可以通过查询IUnknown接口来判断两个接口是否指向同一个组件。

2、客户可以获取曾经得到过的接口
我的理解是,这条规则规定了一个组件的接口集一旦确定就要保持,是不能随时
更改的。
3、可以再次获取已经拥有的接口
很多情况下,函数都需要一个IUnknown指针作为参数。此条规则保证了传递个函
数的指针接口能够获取到特定的接口指针,即便此参数已经是这个特定的接口指
针。

4、应该具有自反性
举个例子: IX成功的查询了一个IY接口。此时可以使用IY接口来成功查询到IX接
口。
5、如果通过某个接口成功获取某特定接口,那么通过该组件的其他任意接口都应
能够查询到该特定接口。
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值