📄 subject_45135.htm
字号:
<p>
序号:45135 发表者:huwell 发表日期:2003-06-26 21:24:05
<br>主题:有个问题我实在想不通,请高手帮忙醍醐灌顶啊(已解决!)
<br>内容:有关《COM原理与应用》一书中<BR>讲到聚合模式时的那个例子:<BR>就是在调用ISomeInterface时,我始终认为这个是陷入了循环。<BR>因为B的QueryInterface对IID_SomeInterface的判断是调用m_pUnknowInner->QueryInterface(IID_ISomeInterface,(void **)&m_pSomeInterface);<BR>这里我知道m_pUnknowInner是指向A的INodelegationUnknow接口指针。<BR>但是它调用的是QueryInterface成员函数,这里的函数代码是<BR>if(m_pUnknowOuter!=NULL)<BR> return m_pUnknowOuter->QueryInterface(iid, ppv);<BR>else<BR> return NondelegatingQueryInterface(iid,ppv);<BR>程序中,这里的m_pUnknowOuter有了具体值(指向B的),所以这里又到了调用B的QueryInterface,这样不是陷入了循环吗?!我实在搞不懂<BR><BR>只是程序这样确实是通过执行了,只有一个可能,我的分析出了问题,可问题在哪里那?请高手帮帮我,急!! <BR>2003-6-27 9:41:52
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -