class A1
{
public:
virtual void Test(){}
};
class A2 : public A1
{
public:
virtual void Test(){}
};
class A3 : public A1
{
public:
virtual void Test(){}
};
class A : public A2, public A3
{
{
public:
virtual void Test(){}
};
class A2 : public A1
{
public:
virtual void Test(){}
};
class A3 : public A1
{
public:
virtual void Test(){}
};
class A : public A2, public A3
{
};
DWORD dw1, dw2, dw3, dw4;
dw1 = (DWORD)((A *)8); //dw1 = 0x08
dw2 = (DWORD)((A3 *)(A *)8); //dw2 = 0x0c
dw3 = (DWORD)((A1 *)(A3 *)(A *)8); //dw 3= 0x0c
dw4 = (DWORD)((A1 *)(A3 *)(A *)8) - 8;//dw4 = 4