1 #include "lib.h" 2 3 struct Derived_Private : public Base 4 { ~Derived_PrivateDerived_Private5 virtual ~Derived_Private() 6 { printf("in Derived_Private destructor\n"); } 7 }; 8 GetPrivate()9Base * GetPrivate() 10 { 11 return new Derived_Private(); 12 } 13 Destroy(Base * pb)14void Destroy(Base * pb) 15 { 16 delete pb; // Virtual call #1 17 } 18 19