南开大学23年春《面向对象程序设计》在线作业三

奥鹏南开大学新学期作业参考

23春学期(仅限-高起专1903、专升本1903)《面向对象程序设计》在线作业-00003

类模板的模板参数( )。
A:只可作为数据成员的类型
B:只可作为成员函数的返回类型
C:只可作为成员函数的参数类型
D:以上三者皆可
正确答案问询微信:424329

若定义cin>>str;当输入 Microsoft Visual Studio 6.0!
所得的结果是str=
()。
A:Microsoft Visual Studio 6.0!
B:Microsoft
C:Microsoft Visual
D:Microsoft Visual Studio 6.0
正确答案问询微信:424329

类MyClass的定义如下:
class MyClass
{
public:
MyClass() { value = 0;}
SetVariable(int i) { value = i; }
private:
int value;
}
则对下列语句序列正确的描述是()。
MyClass *p,my; p=SetVariable(5)与语句my.SetVariable(5)等价
正确答案问询微信:424329

在一个C++源文件中使用了cin和cout,那么在这个源文件中必须包含()文件。
A:iostream
B:fstream
C:stdio.h
D:stdlib.h
正确答案问询微信:424329

下面对模板的声明,正确的是( )。
A:A.template
B:template
C:template
D:template
正确答案问询微信:424329

缺省析构函数的函数体是( )。
A:不存在
B:随机产生的
C:空的
D:无法确定的
正确答案问询微信:424329

类B是类A的公有派生类,类A和类B中都定义了虚函数func(),p是一个指向类A对象的指针,则p->A::func()将( )。
A:调用类A中是函数func()
B:调用类B中是函数func()
C:根据P所指的对象类型而确定调用A中或类B中的函数func()
D:既调用类A中函数,也调用类B中的函数
正确答案问询微信:424329

已知AA是一个类,则执行语句AA a;后( )。
A:自动调用无参构造函数
B:自动调用有参构造函数
C:自动调用拷贝构造函数
D:产生一个对象a,但不调用任何函数
正确答案问询微信:424329

通常拷贝构造函数的参数表是( )。
A:某个对象名
B:某个对象的成员名
C:某个对象的引用名
D:某个对象的指针名
正确答案问询微信:424329

下列关于动态联编的描述中,错误的是()。
A:动态联编是以虚函数为基础的
B:动态联编是在运行时确定所调用的函数代码的
C:动态联编调用函数操作是通过指向对象的指针或对象
D:动态联编是在编译时确定操作函数的
正确答案问询微信:424329

下列关于拷贝构造函数的描述中,错误的是()。
A:一个类可以定义多个拷贝构造函数
B:若未定义拷贝构造函数,则系统会提供一个默认拷贝构造函数
C:当类中有指针成员变量时,通常要为这个类定义一个拷贝构造函数来实现深拷贝
D:拷贝构造函数中的参数按引用方式传递
正确答案问询微信:424329

关于对象成员的构造函数的调用顺序,说法正确的是( )。
A:与它们在成员初始化列表中给出的顺序相同
B:与析构函数的调用顺序相同
C:与它们在类中说明顺序相同
D:以上说法都不对
正确答案问询微信:424329

有关重载函数的描述正确的是()。
A:函数名相同的函数就是重载函数
B:函数名相同但返回值类型不同的函数就是重载函数
C:函数名相同但参数个数或类型不同的函数就是重载函数
D:函数功能相同的函数就是重载函数
正确答案问询微信:424329

关于类和对象不正确的说法是( )。
A:类是一种类型,它封装了数据和操作
B:对象是类的实例
C:一个类的对象只有一个
D:一个对象必属于某个类
正确答案问询微信:424329

抽象类的作用主要是()。
A:直接用作基类
B:直接用作指针
C:引用的基类型
D:包括以上各项
正确答案问询微信:424329

对于多重继承,有( )。
A:一个派生类只能有一个基类
B:一个基类只能产生一个派生类
C:一个基类必须产生多个派生类
D:一个派生类可有多个基类
正确答案问询微信:424329

下面描述中,错误的是()。
A:公有继承时,基类中的public成员在派生类中仍是public的
B:公有继承时,基类中的private成员在派生类中仍是private的
C:公有继承时,基类中的protected成员在派生类中仍是protected的
D:私有继承时,基类中的public成员在派生类中是private的
正确答案问询微信:424329

this指针是C++实现( )的一种机制。
A:抽象
B:封装
C:继承
D:重载
正确答案问询微信:424329

在派生类中重新定义虚函数时,除了(),其他方面都应与基类中相应的虚函数保持一致。
A:函数名
B:参数
C:函数体
D:返回值类型
正确答案问询微信:424329

派生类中的成员不能访问基类中的()。
A:私有成员
B:公有成员
C:保护成员
D:以上都可以
正确答案问询微信:424329

单目运算符作为类成员函数重载时()。
A:有形参
B:没有形参
C:有实参
D:以上都不正确
正确答案问询微信:424329

在C++中,要实现动态联编,可以使用( )调用虚函数。
A:类名
B:派生类指针
C:对象名
D:基类指针
正确答案问询微信:424329

友元重载运算符obj1obj2被C++编译器解释为()。
A:operator(obj1,obj2)
B:(obj1,obj2)
C:obj1.operator(obj2)
D:obj2.operator(obj1)
正确答案问询微信:424329

下面哪个基类中的成员函数表示纯虚函数( )。
A:virtual void vf(int)
B:void vf(int)=0
C:virtual void vf()=0
D:virtual void vf(int)
正确答案问询微信:424329

假设A为抽象类,下列语句( )是正确的。
A:A fun(int);
B:A *p;
C:int fun(A);
D:A Obj;
正确答案问询微信:424329

下列关于运算符重载正确的是()。
A:运算符重载可以改变运算符的操作数个数
B:运算符重载可以改变运算符的优先级
C:运算符重载可以改变运算符的结合性
D:运算符重载不可以改变语法结构
正确答案问询微信:424329

已知“int a=10;int r=r+20;couta;”,则输出为()。
A:10
B:20
C:30
D:不确定值
正确答案问询微信:424329

下列关于虚函数的说明中,正确的是()。
A:从虚基类继承的函数都是虚函数
B:虚函数不得是静态成员函数
C:只能通过指针或引用调用虚函数
D:抽象类中的成员函数都是虚函数
正确答案问询微信:424329

对于类定义 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()是虚函数
正确答案问询微信:424329

将一个string类对象赋予新值,应该使用string类的()函数。
A:assign
B:insert
C:swap
D:find
正确答案问询微信:424329

下面关于对象概念的描述中,( )是错误的。
A:对象就是C语言中的结构变量
B:对象代表着正在创建的系统中的一个实体
C:对象是一个状态和操作(或方法)的封装体
D:对象之间的信息传递是通过消息进行的
正确答案问询微信:424329

一个类的友元函数能够访问该类的( )。
A:私有成员
B:保护成员
C:公有成员
D:所有成员
正确答案问询微信:424329

实现运行时的多态性要使用()。
A:构造函数
B:析构函数
C:重载函数
D:虚函数
正确答案问询微信:424329

下列关于成员函数特征的描述中,错误的是( )。
A:成员函数一定是内联函数
B:成员函数可以重载
C:成员奥鹏南开大学新学期作业参考 代做2元一门函数可以设置参数的默认值
D:成员函数可以是静态的
正确答案问询微信:424329

下列关于对象数组的描述中,错误的是( )。
A:对象数组的下标是从0开始的
B:对象数组的数组名是一个常量指针
C:对象数组的每个元素是同一个类的对象
D:对象数组只能赋初值,而不能在定义后赋值
正确答案问询微信:424329

派生类中至少包含了它的所有基类的成员(除构造函数和析构函数外),在这些成员中可能有的是不可访问。
A:对
B:错
正确答案问询微信:424329

在类体外定义成员函数时需要通过域运算符指定该成员函数所属的类。
A:对
B:错
正确答案问询微信:424329

编程是将所设计的算法转换成计算机能够运行的代码的过程。
A:对
B:错
正确答案问询微信:424329

遇到一个问题后,应先分析问题、设计算法,然后再编写程序。
A:对
B:错
正确答案问询微信:424329

在C++程序中,有且仅能有一个主函数,且其函数名必须是main。
A:错误
B:正确
正确答案问询微信:424329

在用class定义一个类时,数据成员和成员函数的默认访问权限是public。
A:对
B:错
正确答案问询微信:424329

cout属于标准输出流,而cerr和clog则不属于标准输出流。
A:对
B:错
正确答案问询微信:424329

在派生类对象销毁时,系统除了会自动调用派生类的析构函数,还会自动调用基类的析构函数。
A:错误
B:正确
正确答案问询微信:424329

构造函数可以被继承。
A:对
B:错
正确答案问询微信:424329

在面向对象程序设计中,每个对象可以单独设置属性值。
A:对
B:错
正确答案问询微信:424329

在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的。
A:对
B:错
正确答案问询微信:424329

一个算法必须能在有限步骤内解决问题。
A:对
B:错
正确答案问询微信:424329

在派生类构造函数的成员初始化列表中,可以包含基类构造函数的调用。
A:错误
B:正确
正确答案问询微信:424329

假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为:
AB operator+(AB
A:错误
B:正确
正确答案问询微信:424329

函数的参数个数和类型都相同,只是返回值不同,这不是重载函数。
A:对
B:错
正确答案问询微信:424329

提供优质的教育资源

公众号: 超前自学网