继承场景下析构函数与operator~调用行为的疑问
继承场景下析构函数与operator~调用行为的疑问
之前我从一个问题里搞清楚了点细节:在派生类中调用 ~base() 的时候,实际流程是先构造一个临时的base类对象,接着对这个临时对象调用它的 operator~(),最后再销毁这个临时对象。
但现在我碰到了个搞不懂的情况——如果base类压根就没有定义 operator~,那我在派生类里调用 base::~base() 的时候,居然还是能正常触发base类的析构函数?这前后的行为差异让我有点摸不着头脑。
备注:内容来源于stack exchange,提问作者ValExi
相关产品推荐
相关产品推荐

