已知类MyClass声明如下:class MyClass{int n;public:MyClass(int k):n(k){}int getValue()const{

18 查阅

已知类MyClass声明如下:

class MyClass{

int n;

public:

MyClass(int k):n(k){}

int getValue()const{return n;}

};

在下列数组定义中正确的是

A.MyClass xl[2];

B.MyClass x2[2]={new MyClass(1),new MyClass(2)};

C.MyClass * x3[2];

D.MyClass * x412]={MyClass(1),MyClass(2)};

参考答案:

C解析:MyClass类中只定义了一个构造函数,即Myclass(int k):n(k){},这个构造函数只有一个形参,因此A)选项错误;类中并没有提供有“MyClass*”类型转化为“MyClass”类型的功能,因此B)选项错误;同理,类中也没有提供“MyClass”类型转化为“My-Class*”类型的功能,D)选项错误。C选项是定义了一个指向MyClass类型的指针数组,故本题选c)。

计算机二级