fork download
  1. #include <iostream>
  2.  
  3. struct SomeNonTrivialType {
  4. SomeNonTrivialType() { std::cout << "SomeNonTrivialType()" << std::endl; }
  5. ~SomeNonTrivialType() { std::cout << "~SomeNonTrivialType()" << std::endl; }
  6. };
  7.  
  8. class A {
  9. public:
  10. virtual ~A() {}
  11. private:
  12. int a;
  13. };
  14.  
  15. class B : public A {
  16. private:
  17. SomeNonTrivialType b;
  18. };
  19.  
  20. int main() {
  21. A *a = new B;
  22. delete a;
  23. return 0;
  24. }
Success #stdin #stdout 0.01s 2812KB
stdin
Standard input is empty
stdout
SomeNonTrivialType()
~SomeNonTrivialType()