请问Com技术内幕上面说:QueryInterface返回里面返回的IUknown要总是一样,但是我想问的是
IX : public IUknown
IY : public IUknown
class CA : public IX, public IY
这里CA并不是虚拟继承,就是说CA里面有两个IUknown,那么到底返回哪一个呢,又如何保证返回的IUknown总是一样的呢?
另外一个问题是为什么不用虚拟继承?
IX : public IUknown
IY : public IUknown
class CA : public IX, public IY
这里CA并不是虚拟继承,就是说CA里面有两个IUknown,那么到底返回哪一个呢,又如何保证返回的IUknown总是一样的呢?
另外一个问题是为什么不用虚拟继承?
解决方案 »
- 我找不到id所对应的控件了,怎么办?
- 如何把字符串中的数放到IN函数中
- 困惑大于收获,郁闷,小散~~~
- messagebox("aaa","Erorr",ID_YESNO)中我想默认焦点为NO行不行呀???
- 线程之间的调用
- 关于用C创建状态栏(Status Bar)的问题。NO MFC 帮帮我吧
- 请问钩子函数在什麽地方初始化,在什麽地方卸载钩子??谁能给我讲讲钩子的用法?能自定义钩子消息吗?
- 在InstallShield中有什么函数可以取到一个注册表项的值?RegDBGetKeyValueEx函数只能判断此值存在否.如我要取到产品号?
- 只有LIB和.H文件,而没有dll文件,怎么运行总是要dll文件?在线送分。
- Dialogic语音卡和信令卡使用问题。。。
- 请高手指点:想把socket做成dll,而实际调用的是c开发环境(其实是CVI),不知是否可行?
- 请问DestructElements的实现位置及格式的问题
为什么不直接用虚拟继承呢?这样就可以直接转换为IUnknow,岂不是更好?
为什么不直接用虚拟继承呢?这样就可以直接转换为IUnknow,岂不是更好?
====================================================================
转换成什么都没有关系的,只要符合COM标准就行了!
为什么不用虚拟继承?是没有这个必要还是不能用?
因为不用虚拟继承将导致CA中存在两套IUknown(即使IUnknown本身没有任何数据),这有必要么?不是容易引起问题么,那为什么不干脆就虚拟继承,这样这些问题不是都没有了么