com的问题,请求帮忙,必给分!
书上关于聚合是这样说的:
内部组件的非委托UNKNOW接口只能由外部组件获得,当组件被聚合,委托UNKNOW接口将把所有的QUERYINTERFACE,ADDREF,RELEASE调用转发给外部组件。
我想如果是这样的话,那么比如CA是一个外部组件,CB是一个被它聚合的内部组件,CA想用CB中的IY接口,按照原理就是CA从CB获得IY的接口指针,但是就如上面所说,当组件被聚合,委托UNKNOW接口将把所有的QUERYINTERFACE,ADDREF,RELEASE调用转发给外部组件。CA的请求一到CB就被转发了,应该就又变回调用CA的QUERYINTERFACE了,而CA的QUERYINTERFACE在找IY接口时又通过内部组件指针调用了它的m_punknowinner->queryinterface,这不成了个死循环了吗,想的我 头都大了,它最终还是无法获得内部的IY接口指针啊 ????!!!!!!、、
有谁能解释一下,一定给分的