单项选择题

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

public:
A()cout<<"A";
~A()cout<<"~A";)
;
class B:public A

A*p;
public:
B()cout<<"B";p=new A;
~B()cout<<"~B";delete p;
;
int main()

B obj;
return 0;

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

A.BAA~A~B~A
B.ABA~B~A~A
C.BAA~B~A~A
D.ABA~A~B~A