计算机二级

以下类定义中可能会引起错误的语句是( )。 classA { public: ~A( ){}//1 inti;//2 private: intj;//3 A(inti){i++;}//4 };A.1B.2C.3D.4

题目

以下类定义中可能会引起错误的语句是( )。 classA { public: ~A( ){}//1 inti;//2 private: intj;//3 A(inti){i++;}//4 };

A.1

B.2

C.3

D.4

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

第1题:

下列类的定义中,有( )处语法错误。 class Base { public: Base(){} Base(int i) { data=i; } private: int data; }; class Derive : public Base { public: Derive() : Base(O) {} Derive (int x) { d=x; } void setvalue(int i) { data=i; } private: int d; };

A.1

B.2

C.3

D.4


正确答案:B
解析:本题考核派生类的定义和成员的访问权限。第①处错误:在派生类的构造函数Derive(intx)中没有调用基类的构造函数对基类对象初始化。第②处错误:数据data是基类Base的私有成员,派生类Derive不能访问,所以在函数setvalue中对data的赋值是错误的。

第2题:

以下类定义中可能会引起错误的语句是 class A { public: ~A(){} //1 int i; //2 private: int j; //3 A(int i){i++;} //4 };

A.1

B.2

C.3

D.4


正确答案:D

第3题:

以下类定义中可能会引起错误的语句是 class A { public: ~A( ){} //1 int i; //2 private: int j; //3 A(int i){i++;} //4 };

A.1

B.2

C.3

D.4


正确答案:D
解析:在c++语言中类定义中的构造函数是私有的,但是其却调用了其中的公有变量,在实例化时会出现错误。注意:c++语言类的定义

第4题:

以下类定义中可能会引起错误的语句是

class A

{

public:

~A( ){ } //1

int i; //2

private:

int j; //3

A(int i) {i++;} //4

};

A.1

B.2

C.3

D.4


正确答案:D
解析:在c++语言中类定义中的构造函数是私有的,但是其却调用了其中的公有变量,在实例化时会出现错误。注意:C++语言类的定义

第5题:

下列类的定义中,有( )处语法错误。 class Base { public: Base(){} Base(int i) { data=i; } private: int data; }; class Derive: public Base { public: Derive(): Base(0){} Derive(int x) { d=x; } void setvalue(int i) { data=i; } private: d; }

A.1

B.2

C.3

D.4


正确答案:B
解析:本题考核派生类的定义和成员的访问权限。第一处错误:在派生类的构造函数Derive(intx)中没有调用基类的构造函数对基类对象初始化:第二处错误:数据data是基类Base的私有成员,派生类Derive不能访问,所以在函数setvalue中对data的赋值是错误的。

第6题:

下列类的定义中,有( )处语法错误。 class Base { public: Base(){} Base(int i) { data=i; } private: int data; }; class Derive : public Base { public: Derive() : Base(0) {} Derive (int x) { d=x; } void setvalue(int i) { data=i; } private: d; };

A.1

B.2

C.3

D.4


正确答案:B
解析:本题考核派生类的定义和成员的访问权限。第一处错误:在派生类的构造函数Derive(int x)中没有调用基类的构造函数对基类对象初始化;第二处错误:数据data是基类Base的私有成员,派生类Derive不能访问,所以在函数setvalue中对data的赋值是错误的。

第7题:

以下类定义中可能会引起错误的语句是 class A { public: ~A(){} //1 int i; //2 private: int j //3 A(int i){i++;} //4 };

A.1

B.2

C.3

D.4


正确答案:D
解析:在c++语言中类定义中的构造函数是私有的,但是其却调用了其中的公有变量,在实例化时会出现错误。注意:C++语言类的定义

第8题:

下列类的定义中,有( ) 处语法错误。 class Base { public: Base(){} Base(int i) { data=i; } private: int data; }; class Derive: public Base { public: Derive(): Base(O) { } Derive(int x) { d=x; } void setvalue(int i) { data=i; } private: d; };

A.1

B.2

C.3

D.4


正确答案:B
解析:本题考核派生类的定义和成员的访问权限。第一处错误:在派生类的构造函数Derive(intx)中没有调用基类的构造函数对基类对象初始化:第二处错误:数据data是基类Base的私有成员,派生类Derive不能访问,所以在函数setvalue中对data的赋值是错误的。

第9题:

以下类定义中可能会引起错误的语句是( )。 Class A { public: ~A(){}//1 int i;//2 private: int j;//3 A(int i){i++;}//4 };

A.1

B.2

C.3

D.4


正确答案:D