选择题   有如下程序:
    #include<iostream>
    using namespace std;
    class MyClass{
    public:
    MyClass(){cout<<'A';}
    MyClass(char c){cout<<c;}
    ~MyClass(){cout<<'B';}
    };
    int main(){
    MyClass p1.*p2;
    p2=new MyClass('X');
    delete p2;
    return 0;
    }
    执行这个程序的输出结果是______。
 
【正确答案】 D
【答案解析】构造函数和析构函数的调用顺序为先构造的后析构,后构造的先析构。所以本题答案为D。