A-A+

已知类MyClass声明如下:class MyClass{int n;public:MyCl

2022-08-06 02:24:45 问答库 阅读 174 次

问题详情

已知类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)。

考点:声明