计算机二级

下面类的定义,有( )处错误。 class MyClass { public: void MyClass(); ~MyClass(int Value); private: int i=0; };A.1B.2C.3D.4

题目

下面类的定义,有( )处错误。 class MyClass { public: void MyClass(); ~MyClass(int Value); private: int i=0; };

A.1

B.2

C.3

D.4

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列类的定义中有几处错误()。 class myclass{ int i=0; public: myclass();~myclass(value);}

A.1

B.2

C.3

D.4


X a4(10); Y b2=a4;

第2题:

类MyClass的定义如下: class MyClass { public: MyClass(){} MyClass(int i){value=new int(i);} int*value; }; 若要对value赋值,则下面语句正确的是( )。

A.MyClass my;my.value=10;

B.MyClass my;*my.value=10;

C.MyClass my;my.*value=10;

D.MyClass my(10);


正确答案:D

第3题:

类MyClass的定义如下: class MyClass { public: MyClass(){} MyClass(int i) { value=new int(i); } int *value; }; 若要对类中的value赋值,则下面的语句中,正确的是( )。

A.MyClass my;my.value=10;

B.MyClass my;*my,value=10;

C.MyClass my;my.*value=10;

D.MyClass my(10);


正确答案:D

第4题:

下列程序在构造函数和析构函数中申请和释放类的私有成员,请完成该类的实现。

class Myclass {

public:

Myclass(int num);

~ Myclass( );

public:

int *p;

};

Myclass: :Myclass( int hum) {

【 】

Myclass:: ~ Myelass( ) {

【 】;

}。


正确答案:P=new int(a)、delete P
P=new int(a)、delete P 解析:new和delete的用法。

第5题:

如下的类定义,错误的语句是( )。class Myclass {public: int a=1; //A) Myclass( ); //B) Myclass(int i); //C) ~Myclass( ); //D)

A.A

B.B

C.C

D.D


正确答案:A
解析:类中的数据成员不能在定义类时直接赋初值。

第6题:

类MyClass的定义如下,若要对value赋值,则下面语句正确的是( )。 classMyClass { public: MyClass( ){} MyClass(inti){value=newint(i);} int*value; };

A.MyClassmy;my.value=10;

B.MyClassmy;*my.value=10;

C.MyClassmy;my.*value=10;

D.MyClassmy(10);


正确答案:D
D。【解析】因题目中定义的指针value是指淘变量i的,所以直接利用语句MyClass(inti){value=newint(i);}对value进行赋值即可。

第7题:

下面类的定义,有( )处错误。 classMyClass {public: voidMyClass(); ~MyClass(intvahle); private: inti=0;};

A.1

B.2

C.3

D.4


正确答案:C
C。【解析】上述类的定义共有三处错误:①类的成员变量不能在定义时进行初始化;②类的构造函数不能有返回值(包括void类型);③类的析构函数不能有参数。

第8题:

类MyClass的定义如下,若要对value赋值,则下面语句正确的是( )。 class MyClass { public: MyClass(){} MyClass(int i){value=new int(i);} int*value; };

A.MyClass my;my.value=10;

B.MyClass my;*my.value=10;

C.MyClass my;my.*value=10;

D.MyClass my(10);


正确答案:D
解析:因题目中定义的指针value是指向变量i的,所以直接利用语句MyClass(int i){value=new int (i);}对Value进行赋值即可。

第9题:

类MyClass的定如下,若要对value赋值,则下面语句正确的是( )。 class MyClass { public: MyClass(){} MyClass(int i){value=new int(i);} int*value; };

A.MyClass my;my.value=10;

B.MyClass my;*my.value=10;

C.MyClass my;my.*value=10;

D.MyClass my(10);


正确答案:D
解析: 因题目中定义的指针value是指向变量i的,所以直接利用语句MyClass(int i){value=new int(i);}对 value进行赋值即可。