重用的另一种方法
a 聚合 b
b 要有必要的支持才能实现,具体过程如:
a, cocreateinstance,指定 自己的IUnknown ,并必须在iid,ppv中指定是 IID__IUnknown ,IUnknown*(被聚合的com类的 非委托IUnknown)
此时 被聚合类 在类厂(createinstance 中 接收 a的 IUnknown 并在 b 的成员中赋好值)支持下,被创建
的com类 被创建。
b 中 2组 IUnknown 接口:委托(聚合) 和 非委托(正常)
在a 中获取 IUnknown接口(b的),请求 其他 接口时 ( a把 客户发出的对b 的接口请求 转到 a 获取
IUnknown 接口 调用 queryinterface ),全部使用 b 对象 的 委托接口 来判断 是把接口请求 转到
非委托 还是 外部 a 的IUnknown
posted on 2006-07-05 11:45
黄大仙 阅读(1240)
评论(0) 编辑 收藏 引用 所属分类:
c++