早期绑定:c++编译器在编译的时候,要确定每个对象调用的函数(非虚函数)的地址。
晚期绑定:在运行时再去确定对象的类型以及正确的调用函数。
虚表的创建:它初始化父类对象的虚表指针,该虚表指针指向父类的虚表,当执行子类的构造函数时,子类对象的虚表指针被初始化。
object类的定义
class object {
int a;
int b;
public:
object(): a(0), b(1) {}
virtual void f() {}
};
object对象内存结构
获取type_info对象