问题 单项选择题

有如下程序#include#includeusing namespace std;class MyClass{public:MyClass(){cout<<′A′;}MyClass(char c){cout<<′c′;}MyClass(){cout<<′B′;} }int main(){ MyClass pl,*p2; p2=new MyClass(′X′);delete p2;retum 0;}执行这个程序屏幕上将显示输出【 】

A.ABX

B.ABXB

C.AXB

答案

参考答案:D

解析:主程序在创建MyClass类的实例对象pl时,调用MyClass类的默认构造函数,输出字母A。然后在创建*p2对象时,调用带字母参数的构造函数,输出字母X,语句delete p2调用析构函数,输出字母B,在主函数退出时,调用析构函数清除实例p1,输出字母B。

单项选择题
单项选择题