单项选择题

有如下程序:
#include<iostream>
using namespace std;
class TestClass1

public:
TestClass1 ()cout<<"TestClass1";
~TestClass1 ()cout<<"~TestClass1";
;
class TestClass2:public TestClass1

TestClass1 *p;
public:
Testclass2()cout<<"TestClass2";p=new TestClass1();
~TestClass2()cout<<"~TestClass2";delete p;
);
int main()

TestClass2 obj;
return 0;

执行这个程序的输出结果是( )。

A.TestClass2TestClass1TestClass1~TestClass1~TestClass2~TestClass1
B.TestClass1TestClass2TestClass1~TestClass2~TestClass1~TestClass1
C.TestClass2TestClass1TestClass1~TestClass2~TestClass1~TestClass1
D.TestClass1TestClass2TestClas1~TestClass1~TestClass2~TestClass1