问题 单项选择题

有如下程序:
#include<iostream>
#include<iomanip>
using 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;
return 0;

执行这个程序屏幕上将显示输出

A.ABX

B.ABXB

C.AXB

D.AXBB

答案

参考答案:D

解析: Myclass p1,*p2;在生成对象pl时要调用Myclass的无参构造函数打印A;p2=newMyclass(’X’);生成对象时调用有参构造函数打印X;在删除指针p2时调用MyClass的析构函数一次,打印B;在程序结束时,删除对象p1,调用析构函数一次,打印B。

选择题
判断题