A-A+
已知类MyClass声明如下:class MyClass{int n;public:MyCl
问题详情
已知类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)。