C++构造函数、析构函数、虚析构函数

  一般地,建立对象和删除对象时,父类构造函数->子类构造函数->……->子类析构函数->父类析构函数。

  特例:如果用new建立了一个对象,并将父类的指针指向这个子类的对象,那么用delete撤销对象时,系统只执行基类的析构函数,而不执行派生类的析构函数。

如果希望按照子类析构函数->父类析构函数的顺序执行,那么应该将基类的析构函数声明为virtual(建议这么做)。如果基类的虚构函数为virtual,那么该基类的所有派生类的析构函数也自动称为虚函数。

  注意:构造函数不能声明为virtual

C++构造函数、析构函数、虚析构函数,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。