ich diesen Code versucht:Warum C++ destructor bei Vererbung aufgerufen 2 mal
#include <iostream>
using namespace std;
class A {
public:
A(){cout<<"A();";}
~A(){cout<<"~A();";}
};
class B : public A {
public:
B(){cout<<"B();";}
~B(){cout<<"~B();";}
};
int main() {
A a =B();
return 0;
}
Ausgang: A(), B(); ~ B(); ~ A(); ~ A();
Warum wird der Destruktor von A zweimal aufgerufen?
Sie haben Kopier-Constructor und Slicing ... – Jarod42