??????????? 重用的另一種方法
????? a 聚合 b
??? b 要有必要的支持才能實(shí)現(xiàn),具體過(guò)程如:
???? a, cocreateinstance,指定 自己的IUnknown? ,并必須在iid,ppv中指定是 IID__IUnknown ,IUnknown*(被聚合的com類的 非委托IUnknown)
此時(shí) 被聚合類 在類廠(createinstance 中 接收 a的 IUnknown? 并在 b 的成員中賦好值)支持下,被創(chuàng)建
的com類 被創(chuàng)建。
????? b 中 2組 IUnknown 接口:委托(聚合) 和?? 非委托(正常)
??? 在a 中獲取 IUnknown接口(b的),請(qǐng)求 其他 接口時(shí) ( a把 客戶發(fā)出的對(duì)b 的接口請(qǐng)求 轉(zhuǎn)到? a 獲取
?IUnknown 接口 調(diào)用 queryinterface ),全部使用? b 對(duì)象 的? 委托接口? 來(lái)判斷? 是把接口請(qǐng)求 轉(zhuǎn)到
非委托 還是 外部? a 的IUnknown
posted on 2006-07-05 11:45
黃大仙 閱讀(1246)
評(píng)論(0) 編輯 收藏 引用 所屬分類:
c++