虚析构函数与多态删除 | C++

本章覆盖:virtual destructor;delete through base pointer;undefined behavior risk;polymorphic base;protected non-virtual destructor 的特殊设计边界;interface class;smart pointer + polymorphism;rule: intended polymorphic deletion requires virtual destructor;不机械给所有类加 virtual destructor。

本章知识点

  • virtual destructor
  • delete through base pointer
  • undefined behavior risk
  • polymorphic base
  • protected non-virtual destructor 的特殊设计边界
  • interface class
  • smart pointer + polymorphism
  • rule: intended polymorphic deletion requires virtual destructor
  • 不机械给所有类加 virtual destructor