虚函数表:其中一行记录虚函数表指针相对于this指针的偏移量,接下来其余各项记录实际对象的函数地址;
虚基表:第一项记录虚基表指针在其子对象中的偏移量。其余项记录虚基表指针相对于继承的独一份的成员变量的偏移量。
通过虚函数表实现多态。通过虚基表可以只继承一份,并且根据子类都可以找到那个独一份的内存地址。
一个对象中可以有多个虚基表指针,指向多个虚基表,也可以有多个虚函数表指针,指向多个虚函数表。
虚继承和虚函数
于 2022-03-26 18:01:20 首次发布
虚函数表:其中一行记录虚函数表指针相对于this指针的偏移量,接下来其余各项记录实际对象的函数地址;
虚基表:第一项记录虚基表指针在其子对象中的偏移量。其余项记录虚基表指针相对于继承的独一份的成员变量的偏移量。
通过虚函数表实现多态。通过虚基表可以只继承一份,并且根据子类都可以找到那个独一份的内存地址。
一个对象中可以有多个虚基表指针,指向多个虚基表,也可以有多个虚函数表指针,指向多个虚函数表。