16秋北理工《面向对象程序设计》在线作业

更新时间:2023-12-04 18:18:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

北理工《面向对象程序设计》在线作业

一、单选题(共 38 道试题,共 76 分。)

1. 在下列函数原型中,可以作为类A构造函数的是()。 A. void A(int); B. int A();

C. A(int) const; D. A(int); 正确答案:

2. 若函数原型为voidFun(intx,inty=6,intchar='a'),则下列调用错误的是()。 A. Fun(5) B. Fun(5, 'b') C. Fun(5,8) D. Fun(2,4, 'b') 正确答案:

3. 下列描述中,错误的是()。

A. 内联函数主要解决程序的运行效率问题

B. 内联函数的定义必须出现在内联函数第一次被调用之前 C. 内联函数中可以包括各种语句

D. 对内联函数不可以进行异常接口声明 正确答案:

4. 不可以成为类的数据成员的是______ A. 自身类的对象 B. 另一个类的对象 C. 自身类的指针或引用 D. 其他基本数据类型 正确答案:

5. 下列关于虚基类的描述中,错误的是() A. 设置虚基类的目的是消除二义性

B. 虚基类子对象的初始化由最派生类完成 C. 虚基类的构造函数可能调用多次

D. 虚基类的构造函数先于非虚基类的构造函数执行 正确答案:

6. 友元运算符obj1>obj2被C++编译器解释为()。 A. operator >(obj1,obj2) B. >(obj1,obj2)

C. obj2.operator >(obj1)

D. obj1.operator >(obj2) 正确答案:

7. 下列不是C++基本数据类型的是______。 A. int B. string C. char D. void 正确答案:

8. 下列函数中,不是类的成员函数的是()。 A. 构造函数 B. 友元函数 C. 析构函数

D. 复制构造函数 正确答案:

9. 下列关于函数重载的描述中,错误的是()。 A. 函数重载就是用相同的函数名定义多个函数 B. 重载函数的参数列表必须不同 C. 重载函数的返回值类型必须不同 D. 重载函数的参数可以带有默认值 正确答案:

10. 设Address表示整型变量x的地址,则下列语句执行后的输出结果为()。intx=100,&r=x;cout<

C. Address-Address D. 100-Address 正确答案:

11. 下列语句中,会产生编译错误的是()。 A. int x=5; int &ref=x; B. const int size;

C. int x=5; int &ref=x; x++; D. const int size=100; 正确答案:

12. 在C++中,扩充类定义需要借助于()。 A. 对象 B. 继承 C. 重载 D. 函数 正确答案:

13. 下列关于构造函数和析构函数的描述中,错误的是()。 A. 构造函数可以重载 B. 析构函数名与类名相同

C. 构造函数中可以设置参数的默认值 D. 类中只有一个析构函数

正确答案:

14. 假定k是一个double类型的变量,则关于变量p的正确定义语句为()。 A. doublep=&k B. int*p=&k C. double&p=*k

D. char*p=”Thankyou!” 正确答案:

15. 若有如下函数声明:voidFun(int);,则下列()不能与该函数进行重载。 A. void Fun(int,int); B. void Fun(double); C. int Fun(int);

D. void Fun(int) const 正确答案:

16. 关于封装,下列说法中不正确的是()。

A. 通过封装,对象的全部属性和操作结合在一起,形成一个整体 B. 通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见) C. 通过封装,每个对象都成为相对独立的实体 D. 通过封装,对象的属性都是不可见的 正确答案:

17. 下列语句中,会产生编译错误的是()。inti=0,j=1; A. int &r=i; B. r=j; C. r=r+5; D. int *p=&i; 正确答案:

18. 下列关于运算符重载的描述中,______是正确的。 A. 运算符重载可以改变运算数的个数; B. 运算符重载可以改变优先级; C. 运算符重载可以改变结合性;

D. 运算符重载不可以改变语法结构。 正确答案:

19. 下列关于派生类的描述中,错误的是()。 A. 派生类继承了基类的所有成员 B. 派生类能够作为基类继续派生新类 C. 派生类可以有多个直接基类 D. 派生类的默认继承方式是public 正确答案:

20. 下列关于C++函数的描述中,正确的是()。 A. 每个函数至少要有一个参数 B. 每个函数都必须返回一个值

C. 函数在被调用之前必须先进行声明或定义 D. 函数不能自己调用自己 正确答案:

21. 下列函数参数默认值定义错误的是()。

A. Fun(int x=0,int y=0) B. Fun(int x,int y) C. Fun(int x,int y=0) D. Fun(int x=0,int y) 正确答案:

22. 下列关键字中不能用来声明类成员访问权限的是()。 A. public B. static C. protected D. private 正确答案:

23. 对虚函数的调用() A. 一定使用动态联编 B. 必须使用动态联编 C. 一定使用静态联编 D. 不一定使用动态联编 正确答案: 24. 下列程序的输出结果是()。#includeclassVAC{public:intf()const{return3;}intf(){return5;}};intmain(){VACv1;constVACv2;cout<

正确答案: 25. 下列程序的输出结果是()。#includeclassMyClass{public:MyClass(){cout<<'A';}MyClass(charc){cout<

26. 假定p是具有int**类型的指针变量,则给p赋值的正确语句为()。 A. p=newint B. p=newint* C. p=newint** D. p=newint[10] 正确答案:

27. 有如下头文件:intf1();staticintf2();classMy{public:intf3();staticintf4();};在上述4个函数中,具有隐含的this指针的是()。 A. f1 B. f2 C. f3

D. f4

正确答案:

28. 下列关于友元的描述中,错误的是()。 A. 友元破坏了类的封装性 B. 友元提高了程序的运行效率 C. 友元可以在类外声明和定义 D. 友元能够访问类中的私有成员 正确答案:

29. 下列选项中,表示纯虚函数的是()。 A. virtual void fun()=0; B. 2. void fun(int)=0; C. virtual int fun(int); D. virtual void fun(int) {} 正确答案:

30. 在下面的类定义中,横线处应填入的内容是classMyClass{private:staticintcount;};count=0; A. int

B. static int C. int MyClass

D. static int MyClass: 正确答案:

31. C++中用于实现运行时多态性的是()。 A. 内联函数 B. 重载函数 C. 静态函数 D. 虚函数 正确答案:

32. 列符号中能够作为C++标识符的是()。 A. const B. 2a C. _shape D. _count 正确答案:

33. 派生类对象对它的基类成员中()是可以访问的。 A. 公有继承的私有成员 B. 公有继承的保护成员 C. 公有继承的公有成员 D. 私有继承的公有成员 正确答案:

34. 关于运行时多态的下列描述中,______是错误的。 A. 运行时多态是以虚函数为基础的;

B. 运行时多态是在运行时确定所调用的函数代码的;

C. 用基类指针或引用所标识的派生类对象来操作虚函数才能实现运行时多态; D. 运行时多态是在编译时确定操作函数的

)。(

本文来源:https://www.bwwdw.com/article/9mbt.html

Top