问道深山去,听禅紫气来。

19秋学期(1709、1803、1809、1903、1909)《面向对象程序设计》在线作业

阅读:16 更新时间:2019-09-18 12:07:36

19秋学期(1709、1803、1809、1903、1909)《面向对象程序设计》在线作业-0003


------------------------
1.关于动态关联的下列叙述中,()是错误的。
A.动态关联是以虚函数为基础的
B.动态关联调用虚函数操作是指向对象的指针或引用
C.动态关联是在运行时确定所调用的函数代码的
D.动态关联是在编译时确定操作函数的
答案请联系下方QQ

2.继承具有(),即当基类本身也是某一个类的派生类时,底层的派生类也会自动继承间接基类的成员。
A.规律性
B.传递性
C.重复性
D.多样性
答案请联系下方QQ

3.动态联编所支持的多态性是( )。
A.虚函数
B.继承
C.编译时的多态性
D.运行时的多态性
答案请联系下方QQ

4.在下列选项中( )不是ostream类的对象。
A.cin
B.cerr
C.clog
D.cout
答案请联系下方QQ

5.要求打开文件 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);
答案请联系下方QQ

6.下列( )是构造函数的特征。
A.构造函数在创建对象时自动调用
B.构造函数不可以重载
C.构造函数不可以设置默认参数
D.构造函数必须指定函数类型
答案请联系下方QQ

7.下列关于this指针的说法,错误的是()。
A.this指针指向当前正在操作的对象
B.this指针只存在于非静态成员函数中
C.在成员函数中对非静态数据成员的访问是通过this指针完成的
D.静态成员函数中可以通过this指针访问非静态成员
答案请联系下方QQ

8.下面描述中,错误的是()。
A.公有继承时,基类中的public成员在派生类中仍是public的
B.公有继承时,基类中的private成员在派生类中仍是private的
C.公有继承时,基类中的protected成员在派生类中仍是protected的
D.私有继承时,基类中的public成员在派生类中是private的
答案请联系下方QQ

9.有关重载函数的描述正确的是()。
A.函数名相同的函数就是重载函数
B.函数名相同但返回值类型不同的函数就是重载函数
C.函数名相同但参数个数或类型不同的函数就是重载函数
D.函数功能相同的函数就是重载函数
答案请联系下方QQ

10.类的默认的无参构造函数()。
A.在任何情况下都存在
B.仅当未定义无参构造函数时存在
C.仅当未定义有参构造函数时存在
D.仅当未定义任何构造函数时存在
答案请联系下方QQ

11.派生类的构造函数的成员初始化列表中,不能包含()。
A.基类的构造函数
B.派生类中子对象的初始化
C.基类的子对象初始化
D.派生类中一般数据成员的初始化
答案请联系下方QQ

12.在表达式x+y*z中,+ 是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。
A.operator+有两个参数,operator*有两个参数
B.operator+有两个参数,operator*有一个参数
C.operator+有一个参数,operator*有两个参数
D.operator+有一个参数,operator*有一个参数
答案请联系下方QQ

13.撤消对象时,系统自动调用( )函数。
A.成员函数
B.构造函数
C.析构函数
D.普通函数
答案请联系下方QQ

14.对于任意一个类,构造函数的个数最少为( )。
A.0
B.1
C.2
D.3
答案请联系下方QQ

15.对于下面定义的类A在函数f()中将对象成员n的值修改为60的语句应该是( ) class A { public: A(int x){n=x;} void SetNum(int n1){n=n1;} private: int n; } int f() { A*ptr=new A(6); }
A.A(60)
B.SetNum(60)
C.ptr->SetNum(60)
D.ptr->n=60
答案请联系下方QQ

16.read函数的功能是从输入流中读取( )。
A.一个字符
B.当前字符
C.一行字符
D.指定若干个字符
答案请联系下方QQ

17.友元重载运算符obj1>obj2被C++编译器解释为()。
A.operator>(obj1,obj2)
B.>(obj1,obj2)
C.obj1.operator>(obj2)
D.obj2.operator>(obj1)
答案请联系下方QQ

18.( )只能访问静态成员变量,不能访问非静态成员变量。
A.静态函数
B.虚函数
C.构造函数
D.析构函数
答案请联系下方QQ

19.由于数据隐藏的需要,静态数据成员通常被说明为( )。
A.私有的
B.公有的
C.保护的
D.不可访问的
答案请联系下方QQ

20.当一个派生类私有继承一个基类时,基类中的所有公有成员和保护成员成为派生类的( )。
A.public成员
B.private成员
C.protected成员
D.友元
答案请联系下方QQ

21.一个类的友元函数能够访问该类的( )。
A.私有成员
B.保护成员
C.公有成员
D.所有成员
答案请联系下方QQ

22.假设有函数模板定义如下: Template Max(T a, T b, T &c) { c=a+b; } 下列选项正确的是( )。
A.float x,y,z; Max(x,y,z);
B.const int x,y,z; Max(x,y,z);
C.int x,y; float z; Max(x,y,z);
D.float x; int y, z; Max(x,y,z);
答案请联系下方QQ

23.静态成员遵循类的其他成员所遵循的访问限制,除了( )。
A.静态成员函数
B.静态数据成员初始化
C.私有静态数据成员
D.公有静态成员函数
答案请联系下方QQ

24.单目运算符作为类成员函数重载时()。
A.有形参
B.没有形参
C.有实参
D.以上都不正确
答案请联系下方QQ

25.若派生类的成员函数不能直接访问基类中继承来的某个成员,则该成员一定是基类中的(??)。
A.私有成员
B.公有成员
C.保护成员
D.保护成员或私有成员
答案请联系下方QQ

26.类A是类B的友元,类B是类C的友元,则( )是正确的。
A.类B是类A的友元
B.类C是类A的友元
C.类A是类C的友元
D.以上都不对
答案请联系下方QQ

27.有关析构函数的说法正确的是( )。
A.析构函数可以有多个
B.析构函数和构造函数一样可以有形参
C.析构函数的功能是用来释放一个对象
D.析构函数的函数类型为void
答案请联系下方QQ

28.关于类模板,描述错误的是( )。
A.一个普通基类不能派生类模板
B.类模板从普通类派生,也可以从类模板派生
C.根据建立对象时的实际数据类型,编译器把类模板实例化为模板类
D.函数的类模板参数须通过构造函数实例化
答案请联系下方QQ

29.在公有派生情况下,有关派生类对象和基类对象的关系,不正确的叙述是()。
A.派生类的对象可以赋给基类对象
B.派生类的对象可以初始化基类的引用
C.派生类的对象可以直接访问基类的成员
D.派生类的对象的地址可以赋给指向基类的指针
答案请联系下方QQ

30.下面关于类的成员函数描述不正确的是()。
A.静态成员函数内可以直接访问类的非静态成员数据
B.静态成员函数内可以直接访问类的静态成员数据
C.非静态成员函数可以直接访问类的非静态成员数据
D.非静态成员函数可以直接访问类的静态成员数据
答案请联系下方QQ

31.关于虚函数,下列表述正确的是( )。
A.如果在重定义虚函数时使用virtual,则该重定义函数仍然是虚函数
B.虚函数不得声明为静态函数
C.虚函数不得声明为另一个类的友元函数
D.派生类必须重新定义基类的虚函数
正确答案:B

32.下列对派生类的描述中错误的是()。
A.派生类至少有一个基类
B.派生类可作为另一个派生类的基类
C.派生类除了包含它直接定义的成员外,还包含其基类的成员
D.派生类对其继承的基类的成员访问权限保持不变
正确答案:D

33.下列关于构造函数的描述中,错误的是( )。
A.构造函数可以设置默认参数
B.构造函数在说明类变量时自动执行
C.构造函数可以对静态数据成员进行初始化
D.构造函数可以重载
正确答案:C

34.进行文件操作时需要包含_ ()头文件。
A.iostream
B.fstream
C.stdio
D.stdlib
正确答案:B

35.若一个类中含有纯虚函数,则该类称为( )。
A.基类
B.纯基类
C.派生类
D.抽象类
正确答案:D

------------------------
1.以友元方式重载运算符时,形参列表中至少有一个参数必须是自定义数据类型。
A.错误
B.正确
正确答案:B

2.当一个函数的返回值是类对象时,则该函数执行结束后会自动调用拷贝构造函数初始化一个临时对象。
T.对
F.错
正确答案:T

3.构造函数和析构函数都不能重载。
T.对
F.错
正确答案:F

4.C++程序中使用cin和cout除了要包含头文件iostream外,还要指定使用std命名空间。
T.对
F.错
正确答案:T

5.C++语言类定义中默认的访问权限是public。
A.错误
B.正确
正确答案:A

6.析构函数不能被继承。
T.对
F.错
正确答案:T

7.a为MyClass类对象,“static void SetRate(double r){...}”是MyClass类的静态成员函数,则执行语句“a.SetRate(0.05);”时,SetRate成员函数中的this指针指向对象a的地址。
A.错误
B.正确
正确答案:A

8.抽象类虽然也是一种数据类型,但它不能建立对象,只能作为基类被其他类继承。
A.错误
B.正确
正确答案:B

9.定义模板的关键字是template。
T.对
F.错
正确答案:T

10.在类内部定义的public数据可以在类外进行存取。
T.对
F.错
正确答案:T

11.类的常量数据成员只能在常量成员函数中使用。
T.对
F.错
正确答案:F

12.类的静态成员函数中不能访问非静态成员。
T.对
F.错
正确答案:T

13.调试主要是为了解决程序运行时产生的错误。
T.对
F.错
正确答案:T

14.设要把一个文件输出流对象myFile与文件“f:\myText.txt”相关联,所用的C++语句是ifstream myFile("f:\\myText.txt",ios::in|ios::out);
T.对
F.错
正确答案:F

15.返回引用的函数可以返回局部变量。
T.对
F.错
正确答案:F