南开大学23年春《面向对象程序设计》在线作业一
奥鹏南开大学新学期作业参考
23春学期(仅限-高起专1903、专升本1903)《面向对象程序设计》在线作业-00001
静态数据成员初始化在()进行,而且前面不加static,以免与一般静态变量或对象相混淆。
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:class vi奥鹏南开大学新学期作业参考 代做2元一门rtual B:public A
B:virtual class B:public
C:class B:public A virtual
D:class B: virtual public A
正确答案问询微信:424329
假定已定义浮点型变量data,以二进制方式把data的值写入输出文件流对象outfile中去,正确的语句是( )。
A:outfile.write((float *)
B:outfile.write((float *)
C:outfile.write((char *)
D:outfile.write((char *)
正确答案问询微信:424329
友元访问类对象的成员时使用( )。
A:类的成员名
B:“this->成员名”的形式
C:“类名::成员名”的形式
D:“对象名.成员名”的形式
正确答案问询微信:424329
有关类和对象的说法不正确的是( )。
A:对象是类的一个实例
B:一个类只能有一个对象
C:任何一个对象只能属于一个具体的类
D:类与对象的关系和数据类型和变量的关系相似
正确答案问询微信:424329
关于函数模板,描述错误的是( )。
A:函数模板必须由程序员实例化为可执行的函数模板
B:函数模板的实例化由编译器实现
C:一个类定义中,只要有一个函数模板,则这个类是类模板
D:类模板的成员函数都是函数模板
正确答案问询微信:424329
下列关于this指针的说法,错误的是()。
A:this指针指向当前正在操作的对象
B:this指针只存在于非静态成员函数中
C:在成员函数中对非静态数据成员的访问是通过this指针完成的
D:静态成员函数中可以通过this指针访问非静态成员
正确答案问询微信:424329
在一个string类对象表示的字符串中查找子串,应该使用string类的()函数。
A:assign
B:insert
C:swap
D:find
正确答案问询微信:424329
空类的声明( )是正确的。
A:class类名;
B:class类名{};
C:class类名{}
D:class类名
正确答案问询微信:424329
下列关于运算符重载的描述中,正确的是()。
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
面向对象程序设计方法以()为中心进行分析和设计。
A:结构
B:模块
C:对象
D:类
正确答案问询微信:424329
下列说法中错误的是( )。
A:公有继承时基类中的public成员在派生类中是public的
B:公有继承时基类中的private成员在派生类中是不可访问的
C:私有继承时基类中的public成员在派生类中是private的
D:私有继承时基类中的public成员在派生类中是protected的
正确答案问询微信:424329
有下面类的说明,有错误的语句是( )。
class X {
A.int a=2;
B.X();
public:
C.X(int val);
D.~X();
};
A:A
B:B
C:C
D:D
正确答案问询微信:424329
对A、B两个类进行多重继承得到派生类C,则创建派生类C的对象时,从基类B中继承过来的成员变量由()类的构造函数进行初始化。
A:A
B:B
C:C
D:都可以
正确答案问询微信:424329
已知“float *p; p=new float[2];”,若要释放p所指向的堆中的这些字节,下列语句正确的是()。
A:delete p;
B:delete p[];
C:delete []p;
D:delete p[2];
正确答案问询微信:424329
已知函数原型:void f(int a, int b=3,char c='*'); 则下面的函数调用中,不合法的调用是()。
A:f(5)
B:f(5,8)
C:f(6, , '#')
D:f(0,0, '#')
正确答案问询微信:424329
在类定义的外部,可以被访问的成员有( )。
A:所有类成员
B:private或protected的类成员
C:public的类成员
D:public或private的类成员
正确答案问询微信:424329
有关析构函数的说法正确的是( )。
A:析构函数可以有多个
B:析构函数和构造函数一样可以有形参
C:析构函数的功能是用来释放一个对象
D:析构函数的函数类型为void
正确答案问询微信:424329
不论派生类以何种方法继承基类,都不能使用基类的( )。
A:public成员
B:private成员
C:protected成员
D:private成员和protected成员
正确答案问询微信:424329
假定X为一个类,执行X a[3],*p[2];语句时会自动调用该类的构造函数( )次。
A:2
B:3
C:4
D:5
正确答案问询微信: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:class virtual B:public A
B:virtual class B:public A
C:class B: public A virtual
D:class B: virtual public A
正确答案问询微信:424329
对虚函数的调用()。
A:一定使用动态联编
B:一定使用静态联编
C:必须使用动态联编
D:不一定使用动态联编
正确答案问询微信:424329
“#include iostream”是()预处理命令。
A:宏定义
B:文件包含
C:条件编译
D:工程配置
正确答案问询微信:424329
一个静态成员函数无论是公有还是私有,都可以通过类名直接访问。
A:对
B:错
正确答案问询微信:424329
在C++中,可以声明虚构造函数和虚析构函数。
A:错误
B:正确
正确答案问询微信:424329
假定AB为一个类,则执行AB a(10);语句时,系统自动调用该类的构造函数的次数为10。
A:对
B:错
正确答案问询微信:424329
定义模板的关键字是template。
A:对
B:错
正确答案问询微信:424329
在类内部定义的public数据可以在类外进行存取。
A:对
B:错
正确答案问询微信:424329
假定用户没有给一个名为AB的类定义析构函数,则系统自动给出的缺省析构函数定义为~AB(){ }。
A:对
B:错
正确答案问询微信:424329
假定AB为一个类,则执行AB a[10];语句时,系统自动调用该类的构造函数的次数为10。
A:对
B:错
正确答案问询微信:424329
类的常量数据成员只能在常量成员函数中使用。
A:对
B:错
正确答案问询微信:424329
C++的I/O系统通过流的机制实现文件和控制台的输入输出操作。
A:对
B:错
正确答案问询微信:424329
析构函数不能被继承。
A:对
B:错
正确答案问询微信:424329
在保护继承中,对于派生类的访问同于公有继承,而对于派生类的对象的访问同于私有继承。
A:对
B:错
正确答案问询微信:424329
函数的定义不可以嵌套,类的定义可以嵌套。
A:对
B:错
正确答案问询微信:424329
在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的。
A:对
B:错
正确答案问询微信:424329
一个抽象类的派生类可以用于创建对象。
A:对
B:错
正确答案问询微信:424329
定义重载函数时,应保证函数类型有所不同。
A:对
B:错
正确答案问询微信:424329