答案来源:雅宝题库交流网(www.ybaotk.com)-[南开大学(本部)]20秋学期(1109、1803、1809、1903、1909、2003、2009 )《面向对象程序设计》在线作业拿答案加微信:1144766066
试卷总分 拿答案加微信:100 得分 拿答案加微信:100
第1题,类MyClass的定义如下:
class MyClass
{
public:MyClass() { value = 0;}SetVariable(int i) { value = i; }
private:int value;
}
则对下列语句序列正确的描述是()。MyClass *p,my; p=&my;
A、语句p=&my;是把对象my赋值给指针变量p
B、语句MyClass *p,my;会调用两次类MyClass的构造函数
C、对语句 *p.SetVariable(5)的调用是正确的
D、语句p-SetVariable(5)与语句my.SetVariable(5)等价
正确答案:
第2题,用于类中虚成员函数说明的关键字( )。
A、virtual
B、public
C、protected
D、private
正确答案:
第3题,下列程序段中具有相同值的是( ) class Base {int b;}; class Base1:virtual public base{int b1;}; class Base2:virtual public base{int b2;}; class derived:public base 1,public base 2{int b3;}; derived d;
A、d.b与d.base1::b
B、d.base1::b与 d.base1::b1
C、d.b与 d. b3
D、d.base2::b与 d.base2::b2
正确答案:
第4题,建立类模板对象的实例化过程为( )。
A、基类-派生类
B、构造函数-对象
C、模板类-对象
D、模板类-模板函数
正确答案:
答案来源:雅宝题库交流网(www.ybaotk.com),假定MyClass为一类,执行MyClass a,b(2),*p[2];语句时会自动调用该类构造函数()次。
A、2
B、3
C、4
D、5
正确答案:
第 题,对定义重载函数的下列要求中,( )是错误的。
A、要求参数的个数不同
B、要求参数中至少有一个类型不同
C、要求参数个数相同时,参数类型不同
D、要求函数的返回值不同
正确答案:
第1题,可以用p.a的形式访问派生类对象p的基类成员a其中a是( )。
A、私有继承的公有成员
B、公有继承的私有成员
C、公有继承的保护成员
D、公有继承的公有成员
正确答案:
第8题,派生类的对象对它的基类成员中()是可以访问的。
A、公有继承的公有成员
B、公有继承的私有成员
C、公有继承的保护成员
D、私有继承的公有成员
正确答案:
第9题,在类定义的外部,可以被访问的成员有( )。
A、所有类成员
B、private或protected的类成员
C、public的类成员
D、public或private的类成员
正确答案:
答案来源:雅宝题库交流网(www.ybaotk.com),下面关于类概念的描述中,( )是错误的。
A、类是抽象数据类型的实现
B、类是具有共同行为的若干对象的统一描述体
C、类是创建对象的样板
D、类就是C语言中的结构体类型
正确答案:
第11题,派生类的构造函数的成员初始化列表中,不能包含()。
A、基类的构造函数
B、派生类中子对象的初始化
C、基类的子对象初始化
D、派生类中一般数据成员的初始化
正确答案:
答案来源:雅宝题库交流网(www.ybaotk.com),友元关系不能( )。
A、继承
B、是类与类之间是关系
C、是一个类的成员函数与另一个类的关系
D、提高程序的运行效率
正确答案:
第13题,下面对友元的错误描述是( )。
A、关键字friend用于声明友元
B、一个类的成员函数可以是另一个类的友元
C、友元函数访问对象的成员不受访问特性影响
D、友元函数通过this指针访问对象成员
正确答案:,D
第14题,空类的声明( )是正确的。
A、class类名;
B、class类名{};
C、class类名{}
D、class类名
正确答案:
答案来源:雅宝题库交流网(www.ybaotk.com),以下为重载函数的一组函数声明的是()。
A、void print(int); void print(double);
B、void fun(int); int fun(int);
C、int max(int,int); int min(int,int);
D、void mm(); int mm();
正确答案:
第1 题,友元重载运算符obj1obj2被C++编译器解释为()。
A、operator(obj1,obj2)
B、(obj1,obj2)
C、obj1.operator(obj2)
D、obj2.operator(obj1)
正确答案:
第11题,下面对模板的声明,正确的是( )。
A、A.template
B、template
C、template
D、template
正确答案:
第18题,建造新的派生类是( )的实质。
A、派生
B、抽象
C、继承
D、封装
正确答案:
第19题,this指针是C++实现( )的一种机制。
A、抽象
B、封装
C、继承
D、重载
正确答案:
答案来源:雅宝题库交流网(www.ybaotk.com),( )是析构函数的特征。
A、析构函数可以有一个或多个参数
B、析构函数定义只能在类体内
C、析构函数名与类名不同
D、一个类中只能定义一个析构函数
正确答案:
第21题,在一个C++源文件中使用了cin和cout,那么在这个源文件中必须包含()文件。
A、iostream
B、fstream
C、stdio.h
D、stdlib.h
正确答案:
第22题,类A是类B的友元,类B是类C的友元,则( )是正确的。
A、类B是类A的友元
B、类C是类A的友元
C、类A是类C的友元
D、以上都不对
正确答案:
第23题,一个类的友元函数能够访问该类的( )。
A、私有成员
B、保护成员
C、公有成员
D、所有成员
正确答案:
第24题,若类A和类B的定义如下: class A { int i,j; public: void get(); }; class B:A//默认为私有派生 { int k; public; void make(); }; void B:: make() { k=i*j; } 则上述定义中,()是非法的表达式。
A、void get();
B、int k;
C、void make();
D、k=i*j;
正确答案:
答案来源:雅宝题库交流网(www.ybaotk.com),( )的功能是对对象进行初始化。
A、析构函数
B、数据成员
C、构造函数
D、静态数据成员
正确答案:
第2 题,不同的对象可以调用相同名称的函数,并可导致完全不同的行为的现象称为( )。
A、多态性
B、抽象
C、继承
D、封装
正确答案:
第21题,已知& uot;int a=10;int &r=a; r=r+20;couta;& uot;,则输出为()。
A、10
B、20
C、30
D、不确定值
正确答案:
第28题,下列表示引用的方法中,( )是正确的。 已知:int k=1000;
A、int &x=k;
B、char &y;
C、int &z=1000;
D、float &t=&k;
正确答案:
第29题,在使用类创建对象时,系统会自动调用该对象的()完成对象中数据成员的初始化等操作。
A、友元函数
B、虚函数
C、构造函数
D、析构函数
正确答案:
答案来源:雅宝题库交流网(www.ybaotk.com),下列类中( )是输入/输出流类iostream的派生类。
A、fstream
B、ofstream
C、ifstream
D、ostream
正确答案:
第31题,结构化程序设计方法以()为中心进行分 拿答案加微信析和设计。
A、结构
B、模块
C、对象
D、类
正确答案:
第32题,静态数据成员初始化在()进行,而且前面不加static,以免与一般静态变量或对象相混淆。
A、类体内
B、类体外
C、构造函数内
D、内联函数内
正确答案:
第33题,要求打开文件 d:\file.dat,可写入数据,正确的语句是( )。
A、ifstream infile(& uot;d:\file.dat& uot;, ios::in);
B、ifstream infile(& uot;d:\\file.dat& uot;, ios::in);
C、ofstream infile(& uot;d:\file.dat& uot;, ios:ut);
D、fstream infile(& uot;d:\\file.dat& uot;, ios::in| ios:ut);
正确答案:
第34题,下列静态数据成员的特性中,( )是错误的。
A、说明静态数据成员时前边要加关键字static来修饰
B、静态数据成员在类体外进行初始化
C、引用静态数据成员时,要在静态数据成员名前加和作用域运算符
D、静态数据成员不是所有对象所共有的
正确答案:
第35题,声明一个类的对象时,系统自动调用( )函数。
A、成员函数
B、构造函数
C、析构函数
D、普通函数
正确答案:
第3 题,一个类的构造函数中可以不包含对其子对象的初始化。
T、对
F、错
正确答案:F
第31题,虚基类是用来解决多继承中公共基类在派生类中产生多份基类成员的问题。
T、对
F、错
更多答案下载:雅宝题库交流网(www.ybaotk.com)
第38题,C语言中printf命令在c++中改用cin。
T、对
F、错
正确答案:F
第39题,默认形参值应在函数定义处指定。
T、对
F、错
正确答案:
第40题,调试主要是为了解决程序运行时产生的错误。
T、对
F、错
更多答案下载:雅宝题库交流网(www.ybaotk.com)
第41题,一个抽象类的派生类可以用于创建对象。
T、对
F、错
正确答案:F
第42题,派生类中至少包含了它的所有基类的成员(除构造函数和析构函数外),在这些成员中可能有的是不可访问。
T、对
F、错
更多答案下载:雅宝题库交流网(www.ybaotk.com)
第43题,通过指针或引用可以调用不同对象相同名称的函数,但可导致完全不同的行为的现象称为二义性。
T、对
F、错
正确答案:F
第44题,含有纯虚函数的类是抽象类。
T、对
F、错
更多答案下载:雅宝题库交流网(www.ybaotk.com)
第45题,int *p=new int[5];表示为指针变量p分 拿答案加微信配了一个int型元素空间,并将该片内存空间的值初始化为5。
T、对
F、错
正确答案:
第4 题,派生类是从基类派生出来,它不能再生成新的派生类。
T、对
F、错
正确答案:
第41题,重载的运算符保持原来的优先级和结合性以及操作数的个数。
T、对
F、错
更多答案下载:雅宝题库交流网(www.ybaotk.com)
第48题,在面向对象程序设计中,每个对象可以单独设置属性值。
T、对
F、错
更多答案下载:雅宝题库交流网(www.ybaotk.com)
第49题,类中所提供的成员函数可以直接访问该类的私有成员。
A、错误
B、正确
正确答案:
答案来源:雅宝题库交流网(www.ybaotk.com),假定用户没有给一个名为AB的类定义析构函数,则系统自动给出的缺省析构函数定义为~AB(){ }。
T、对
F、错
更多答案下载:雅宝题库交流网(www.ybaotk.com) |