Welcome

首页 / 软件开发 / VC.NET / vs2008下C++对象内存布局(4):多重继承

vs2008下C++对象内存布局(4):多重继承2009-11-07 csdn博客 快乐虾这回我们考虑多重继承的情况:

class CParentA
{
public:
int parenta_a;
int parenta_b;

public:
virtual void parenta_f1()
{
parenta_a = 0x10;
}
virtual void parenta_f2()
{
parenta_b = 0x20;
}
};

class CParentB
{
public:
int parentb_a;
int parentb_b;

public:
virtual void parentb_f1()
{
parentb_a = 0x30;
}
virtual void parentb_f2()
{
parentb_b = 0x40;
}
};

class CChild : public CParentA, public CParentB
{
public:
int child_a;
int child_b;

public:
virtual void parenta_f1()
{
child_a = 0x50;
}
virtual void parenta_f2()
{
child_b = 0x60;
}
virtual void parentb_f1()
{
child_a = 0x70;
}
virtual void parentb_f2()
{
child_b = 0x80;
}
};

CChild child, *pchild;

这个子类拥有两个父类。