[c/c++] 关于虚函数表

参考:

25.6 — The virtual table – Learn C++

几个要点:

  • 没有虚函数的类(父类有虚函数就不算)不包含虚函数表,也没有虚函数表指针;
  • 每个包含虚函数的类都有且仅有一个自己的虚函数表和虚函数表指针;
  • 虚函数表里存放的是函数实现的地址;
  • 虚函数表里不会存放非虚函数;
  • 在对有虚函数表的类实例进行指针调用的时候,默认动作是 ptr->__vptr->function;

你可能感兴趣的:(#,Common/Linux,C/C++,c++)