进行中C++ 语言机制C++17项目 08

cpp-internals

用最小可复现实验观察虚函数表、RAII、const 正确性和异常安全,理解语言规则落到对象布局后的样子。

实验主题vptr / vtable · RAII
验证方式最小程序 · ASan
状态持续补充语言机制

实验方法

每个主题从一个可观察的问题出发:对象大小为什么变化、基类指针删除派生对象会发生什么、异常抛出后哪些析构函数仍会执行。实验结果再和标准语义、编译器输出以及 sanitizer 对照。

当前记录

  • 用对象布局和 sizeof 观察虚函数表指针的存在。
  • 用非虚析构基类指针删除实验复现未定义行为。
  • 用异常安全实验验证栈展开期间的 RAII 清理。
  • 拆解构造期虚调用和 vptr 逐级改写的行为。

项目边界

这是语言机制实验仓库,不是完整的 C++ 教程;每个结论都会绑定编译器、标准版本和最小代码。