求输出结果
#include <iostream>
#include <cstddef>
using namespace std;
class A
{
public:
~A()
{
cout << "A destruct" << endl;
}
};
class B : public A
{
public:
~B()
{
cout << "B destruct" << endl;
}
};
int main()
{
A *pA=new B;
B *pB=new B;
delete pA;
delete pB;
return EXIT_SUCCESS;
}
结果运行截图:

本文演示了 C++ 中派生类与基类析构函数的调用顺序。通过创建两个类 A 和 B,并使 B 继承自 A,然后分别实例化并释放这些对象来观察析构函数的执行顺序。
1332

被折叠的 条评论
为什么被折叠?



