当接口类中如果成员变量 的时候,是否会对com 产生了影响?
当接口类中如果成员变量 的时候,是否会对com 产生了影响?
我们知道, com是最终发布后,提供给用户的,则是:
用户根据接口指针来获得虚函数表指针。
当时,如果接口中插入数据后,那么会如何呢?
举例:
strcut A:public IUnkown
{
虚函数1
虚函数2
int a;
虚函数3;
};
strcut B:public IUnkown
{
虚函数1
虚函数2
int b;
虚函数3;
};
struct C:public A, public B
{
对6个虚函数的实现
};
由于采用多重继承,已经消去了虚基类表指针, 但是有意在接口A,B中插入数据。
是否会对 com产生了影响?
以上的例子,当没有在接口中插入成员变量的时候,其内部布局如下:
虚函数表A地址
虚函数表B地址
插入成员变量后,内存布局为多少?
[解决办法]