#include <iostream>
using namespace std;
class T
{
int _i;
public:
T(int i) {
_i=i;
cout << "construction of T" << endl;
};
virtual void f() { };
~T() {
cout << "destruction of T" << endl;
};
};
class T1: public T
{
public:
T1() : T(1) {
cout << "construction of T1" << endl;
};
virtual void f() { };
~T1() {
cout << "destruction of T1" << endl;
};
};
int main() {
T* t1 = new T1();
delete t1;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgVAp7CiAgICBpbnQgX2k7CiAgICBwdWJsaWM6CiAgICBUKGludCBpKSB7IAogICAgCV9pPWk7IAogICAgCWNvdXQgPDwgImNvbnN0cnVjdGlvbiBvZiBUIiA8PCBlbmRsOwogICAgfTsKICAgIAogICAgdmlydHVhbCB2b2lkIGYoKSB7IH07CiAgICAKICAgIH5UKCkgewogICAgCWNvdXQgPDwgImRlc3RydWN0aW9uIG9mIFQiIDw8IGVuZGw7CQogICAgfTsKfTsKCmNsYXNzIFQxOiBwdWJsaWMgVAp7CiAgICBwdWJsaWM6CiAgICBUMSgpIDogVCgxKSB7CiAgICAJY291dCA8PCAiY29uc3RydWN0aW9uIG9mIFQxIiA8PCBlbmRsOwogICAgfTsKICAgIAogICAgdmlydHVhbCB2b2lkIGYoKSB7IH07CiAgICAKICAgIH5UMSgpIHsKICAgIAljb3V0IDw8ICJkZXN0cnVjdGlvbiBvZiBUMSIgPDwgZW5kbDsKICAgIH07Cn07CgppbnQgbWFpbigpIHsKCVQqIHQxID0gbmV3IFQxKCk7CglkZWxldGUgdDE7CglyZXR1cm4gMDsKfQ==