前言
上节对分析了多态的基本概念, 本节从内存布局的角度再来分析一下多态吧。
单一继承的内存布局
最开始我们分析了虚指针, 虚表, 但都只停留在单继承中, 现在我们在来扩展的探讨多重继承的内存布局
#include <iostream>
#include <stdlib.h>
#include <cstring>
#include <functional>
using std::cin; using std::cout; using std::string; using std::endl;
using type = int;
class Parent {
public:
virtual void fun1() {
}
virtual void fun2() {
}
virtual void fun3() {
}
};
class Child : public Parent {
public:
virtual void fun1() {
}
virtual void fun2_child() {
}
virtual void fun3_child() {
}