重点:
1.虚表和虚指针都是指类中存在虚函数的时候才有,如果类没有虚函数就没有虚指针和虚表
2.虚指针占4个字节
当类中存在虚函数时
1. 每个类都有虚指针和虚表;
2. 如果不是虚继承,那么子类将父类的虚指针继承下来,并指向自身的虚表(发生在对象构造时)。有多少个虚函数,虚表里面的项就会有多少。多重继承时,可能存在多个的基类虚表与虚指针;
3. 如果是虚继承,那么子类会有两份虚指针,一份指向自己的虚表,另一份指向虚基表,多重继承时虚基表与虚基表指针有且只有一份。
详解:这篇文章特别详细,耐心看下去收获非常大