南开21秋学期《面向对象程序设计》在线作业[答案]

作者:奥鹏作业答案 字体:[增加 减小] 来源:南开在线 时间:2021-11-11 01:28

21秋学期(1709、2103、2109、1903、1909、2003、2009、2103)《面向对象程序设计》在线作业 试卷总分:100 得分:100 一、单选题 (共 35 道试题,共 70 分) 1.撤消对象时,系统自动调用( )函数。 A.成员函数 B.构

南开21秋学期《面向对象程序设计》在线作业[答案]

南开21秋学期《面向对象程序设计》在线作业[答案]答案

21秋学期(1709、2103、2109、1903、1909、2003、2009、2103)《面向对象程序设计》在线作业

试卷总分:100  得分:100

一、单选题 (共 35 道试题,共 70 分)

1.撤消对象时,系统自动调用( )函数。

A.成员函数

B.构造函数

C.析构函数

D.普通函数

正确答案:-----

正确答案:-----

 

2.在一个类中,可以对一个操作符进行()重载。

A.1种

B.2种

C.3种

D.多种

正确答案:-----

 

3.下面函数原型声明中,( )声明了fun为纯虚函数。

A.void fun()=0;

正确答案:-----

正确答案:-----

B.virtual void fun()=0;

C.virtual void fun();

正确答案:-----

D.virtual void fun(){};

正确答案:-----

 

4.对于任意一个类,析构函数的个数最多为( )。

A.0

B.1

C.2

D.3

正确答案:-----

 

5.下列表示引用的方法中,( )是正确的。 已知:int k=1000;

A.int &x=k;

B.char &y;

C.int &z=1000;

D.float &t=&k;

正确答案:-----

 

6.抽象类的作用主要是()。

A.直接用作基类

B.直接用作指针

C.引用的基类型

D.包括以上各项

正确答案:-----

 

7.下面关于构造函数和析构函数的描述,错误的是()。

A.析构函数中调用虚函数采用静态联编

B.对虚析构函数的调用可以采用动态联编

C.当基类的析构函数是虚函数时,其派生类的析构函数也一定是虚函数

D.构造函数可以声明为虚函数

正确答案:-----

 

8.由于数据隐藏的需要,静态数据成员通常被说明为( )。

A.私有的

B.公有的

C.保护的

D.不可访问的

正确答案:-----

 

9.下列关于赋值运算符重载的说法中正确的是()。

A.返回值一般是以引用方式返回的对象,而函数体中总是用语句“return *this;”返回this指针所指向的对象

正确答案:-----

B.赋值运算符只能以非成员函数的方式重载

C.赋值运算符既可以以成员函数的方式重载,又可以以非成员函数的方式重载

D.以上均不正确

正确答案:-----

 

10.对于类定义 class A{ public: virtual void funcl(){} void func2(){} }; class B:public A{ public: void func1(){cout<<"class B func1"<<endl;} virtual void func2(){cout<<"class B func2"<<endl;} };下面正确的叙述是( )。

正确答案:-----

A.A::func2()和B::func1()都是虚函数

B.A::func2()和B::func1()都不是虚函数

C.B::func1()是虚函数,A::func2()不是虚函数

D.B::func1()不是虚函数,A::func2()是虚函数

正确答案:-----

 

11.下列引用的定义中,( )是错误的。

A.int i; int &j=i;

B.int i; int &j; j=i;

C.float i; float &j=i;

D.char d; char &k=d;

正确答案:-----

 

12.一个( )允许用户为类定义一种模式,使得类中的某些数据成员、某些成员函数的参数和返回值可以取任意数据类型。

A.函数模板

B.模板函数

C.类模板

D.模板类

正确答案:-----

 

13.()是一个在基类中说明虚函数,它在该基类中没有定义,但要求任何派生类中的可访问性的规定是相同的。

A.纯虚函数

B.虚析构函数

C.虚构造函数

D.静态成员函数

正确答案:-----

 

14.下列静态数据成员的特性中,( )是错误的。

A.说明静态数据成员时前边要加关键字static来修饰

B.静态数据成员在类体外进行初始化

C.引用静态数据成员时,要在静态数据成员名前加和作用域运算符

D.静态数据成员不是所有对象所共有的

正确答案:-----

 

15.当一个派生类公有继承一个基类时,基类中的所有公有成员成为派生类的( )。

A.public成员

B.private成员

C.protected成员

正确答案:-----

D.友元

正确答案:-----

 

16.若一个类中含有纯虚函数,则该类称为( )。

A.基类

B.纯基类

C.派生类

D.抽象类

正确答案:-----

 

17.声明一个类的对象时,系统自动调用( )函数。

A.成员函数

B.构造函数

C.析构函数

D.普通函数

 

21.关于纯虚函数和抽象类的描述中,错误的是()。

A.纯虚函数是一种特殊的虚函数,它没有具体的实现。

B.抽象类是指具有纯虚函数的类。

C.一个基类中有纯虚函数,该类的派生类一定不再是抽象类。

D.抽象类作为基类来使用,其纯虚函数的实现由派生类给出。

正确答案:-----

 

19.使用string类,必须在程序中包含头文件()。

A.string.h

B.string

C.cstring.h

D.cstring

正确答案:-----

 

20.交换两个string类对象所表示的字符串的内容,应该使用string类的()函数。

A.assign

B.insert

C.swap

D.find

正确答案:-----

 

21.对基类和派生类的描述中错误的是( )。

A.派生类是基类的具体化

B.基类继承了派生类的属性

C.派生类是基类定义的延续

D.派生类是基类的特殊化

正确答案:-----

 

22.要求打开文件 d:file.dat,可写入数据,正确的语句是( )。

正确答案:-----

A.ifstream infile("d:file.dat", ios::in);

正确答案:-----

B.ifstream infile("d:file.dat", ios::in);

正确答案:-----

C.ofstream infile("d:file.dat", ios::out);

正确答案:-----

D.fstream infile("d:file.dat", ios::in| ios::out);

正确答案:-----

 

23.在下列关键字中,用以说明类中公有成员的是( )。

A.public

B.private

C.protected

D.friend

正确答案:-----

 

24.关于下面程序段说法正确的是( ) class X { private: int n; public: X(X&); }; X::X(X&x) {n=x.n} X obj1,obj2(obj1);

A.语句obj2(obj1);的功能是用对象obj1初始化具有相同类类型的对象obj2

B.语句obj2(obj1);的功能是用对象obj2初始化具有相同类类型的对象obj1

C.X(X&x)中的&符号可以删除

D.X(X&x)函数中不能访问对象的私有成员

正确答案:-----

 

25.( )只能访问静态成员变量,不能访问非静态成员变量。

A.静态函数

B.虚函数

C.构造函数

D.析构函数

正确答案:-----

 

26.下列关于this指针的说法,错误的是()。

A.this指针指向当前正在操作的对象

B.this指针只存在于非静态成员函数中

C.在成员函数中对非静态数据成员的访问是通过this指针完成的

D.静态成员函数中可以通过this指针访问非静态成员

正确答案:-----

 

27.下面关于友元的描述中,错误的是( )。

A.友元函数可以访问该类的私有数据成员

B.一个类的友元类中的成员函数都是这个类的友元函数

C.友元可以提高程序的运行效率

D.类与类之间的友元关系可以继承

正确答案:-----

 

28.类模板的使用实际上是类模板实例化成一个具体的( )。

A.类

B.对象

C.函数

D.变量

正确答案:-----

 

29.下列关于运算符重载正确的是()。

A.运算符重载可以改变运算符的操作数个数

B.运算符重载可以改变运算符的优先级

C.运算符重载可以改变运算符的结合性

D.运算符重载不可以改变语法结构

正确答案:-----

 

Tag:  南开 学期 在线 作业 答案 

作业咨询:
点击这里给我发消息

论文咨询:
点击这里给我发消息

合作加盟:
点击这里给我发消息

服务时间:
8:30-24:00(工作日)