面向对象程序设计复习题 专科

上传人:zw****58 文档编号:40432428 上传时间:2018-05-26 格式:DOC 页数:6 大小:53KB
返回 下载 相关 举报
面向对象程序设计复习题  专科_第1页
第1页 / 共6页
面向对象程序设计复习题  专科_第2页
第2页 / 共6页
面向对象程序设计复习题  专科_第3页
第3页 / 共6页
面向对象程序设计复习题  专科_第4页
第4页 / 共6页
面向对象程序设计复习题  专科_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《面向对象程序设计复习题 专科》由会员分享,可在线阅读,更多相关《面向对象程序设计复习题 专科(6页珍藏版)》请在金锄头文库上搜索。

1、面向对象程序设计复习题面向对象程序设计复习题 专科专科一、单项选择题 1. 在类定义之外定义成员函数时,下列哪些说法是正确的( ) 。 A. 必须在函数名之前加上类名和作用域符 B. 类的成员函数不可重载 C. 类定义中可以不声明该函数 D. 函数名前作用域符课省略 2. 多重继承的构造顺序一般可分为 4 步,下面给出这 4 个步骤: step1: 任何非虚拟基类的构造函数按照它们被继承的顺序构造。 step2: 任何虚拟基类的构造函数按照它们被继承的顺序构造。 step3: 任何成员对象的构造函数按照它们声明的顺序构造。 step4: 类自己的构造函数。 这 4 个步骤的正确顺序是( ) 。

2、 A. step4、step3、step1、step2 B. step2、step4、step3、step1 C. step2、step1、step3、step4 D. step3、step4、step1、step2 3. 假设 MyClass 是一个类,则该类的拷贝构造函数的声明语句为( ) 。 A. MyClass(MyClass p); B. MyClass C. MyClass(MyClass D. MyClass(MyClass * p); 4. 重载运算符与原运算符可以不一致的是什么 ( )。 A优先级 B操作数个数 C操作内容 D结合性 5. 当用户进行鼠标操作时,释放鼠标左键会

3、发出( )消息。 AWM_lBUTTONDOWN BWM_lBUTTONUP CWM_lBUTTONBLOCK DWM_RBUTTONUP 6. 下面描述中,表达错误的是( ) 。 A. 公有继承时基类中的 public 成员在派生类中仍是 public 的 B. 公有继承是基类中的 private 成员在派生类中仍是 private 的 C. 公有继承时基类中的 protected 成员在派生类中仍是 protected 的 D. 私有继承时基类中的 public 成员在派生类中是 private 的7. 可以用 p.a 的形式访问派生类对象 p 的基类成员 a,其中 a 是什么成员( )

4、A. 私有继承的公有成员 B. 公有继承的私有成员 C. 公有继承的保护成员 D. 公有继承的公有成员 8. 考虑函数原型 void test(int a,int b=7,char=“*“),下面的函数调用中,属于不合法调用的是 ( ) A. test(5); B. test(5,8); C. test(6,“#“); D. test(0,0,“*“); 9. 如果在基类中将 show 声明为不带返回值的纯虚函数,正确的写法是( ) A. virtual show( )=0; B. virtual void show( ); C. virtual void show( )=0; D. void

5、 show( )=0 virtual; 10. 在 ( ) 情况下适宜采用 inline 定义内联函数。 A. 函数体含有循环语句 B. 函数体含有递归语句 C. 函数代码少、频繁调用 D. 函数代码多、不常调用 11. 在下列叙述中,不是 Windows 程序的特点是( ) AWindows 程序通过窗口与用户进行交互。 BWindows 程序是应用事件驱动进行编程。CWindows 程序是利用消息进行通信。 DWindows 程序是利用过程驱动的程序。12. 设置虚基类的目的是( ) 。 A. 简化程序; B. 消除二义性; C. 提高运行效率; D. 减少目标代码; 13. 下列不是控件

6、的是( ) A.组合框 B. 编辑框 C. 滚动条 D.菜单 14. 如果类 A 被说明成类 B 的友元,则( ) A. 类 A 的成员即类 B 的成员 B. 类 B 的成员即类 A 的成员 C. 类 A 的成员函数不得访问类 B 的成员 D. 类 B 不一定是类 A 的友元 15. 不是 Windows 应用程序的资源的是( ) A. 加速键 B. 位图 C. 菜单 D. 窗口 16. 关于 delete 运算符的下列描述中, ( )是错误的。 A. 它必须用于 new 返回的指针; B. 使用它删除对象时要调用析构函数; C. 对一个指针可以使用多次该运算符; D. 指针名前只有一对方括号

7、符号,不管所删除数组的维数。 17. 在下列叙述中,叙述错误的是( ) AWindows 应用程序与控制台(Console)程序的入口函数不同。 B在基于 MFC 编写的程序中,其类大部分都是由 CObject 类派生出来 CWM_LBUTTONDOWN、WM_RBUTTONUP、WM_KEYDOWN 都是鼠标消息 D对话框、图标、菜单、光标等在 VC 中都可以是作为资源来处理18. 下列哪些是有关构造函数的错误说法 ( ) A.构造函数名与类名一样 B.构造函数在说明类对象时自动执行 C.构造函数无任何函数类型 D.构造函数有且只有一个 19. 下面有关重载函数的说法中正确的是( ) A.

8、重载函数必须具有不同的返回值类型; B. 重载函数形参个数必须不同; C. 重载函数必须有不同的形参列表 D. 重载函数名可以不同; 20. 当单文档应用框架接收到框架窗口的命令时,它将按如下次序来寻找相应的消息控制 函数( ) A. 视、文档、SDI 主框架、应用 App B. 文档、应用 App、视、SDI 主框架 C. 视、文档、应用 App、SDI 主框架 D. SDI 主框架、文档、视、应用 App 21、下列关于构造函数的描述中,错误的是( ) A)构造函数可以设置默认参数; B)构造函数在定义类对象时自动执行 C)构造函数可以是内联函数; D)构造函数不可以重载 22、以下关于友

9、元函数的叙述不正确的是( ) A)友元函数提供了类之间数据共享的一个途径 B)一个友元函数可以访问任何类的任何成员 C)友元函数破坏了数据的封装 D)友元函数增加了程序设计的灵活性 23、下面描述中,表达错误的是( ) A)公有继承时基类中的 public 成员在派生类中仍是 public 的 B)公有继承时基类中的 private 成员在派生类中仍是 private 的 C)公有继承时基类中的 protected 成员在派生类中仍是 protected 的 D)私有继承时基类中的 public 成员在派生类中是 private 的 24、最初的计算机编程语言是( )。A)机器语言 B)汇编语

10、言 C)高级语言 D)低级语言 25、C 语言中允许的基本数据类型包括( ) A) 整型、实型、逻辑型。 B) 整型、实型、字符型。 C) 整型、字符型。 D) 整型、实型、逻辑型、字符型 26、 结构化程序设计的一种基本方法是( ) A) 筛选法 B) 递归法 C) 归纳法 D) 逐步求精法 27、 C+语言的跳转语句中,对于 break 和 continue 说法正确的是( ) A) continue 语句只应用与循环体中 B) break 语句只应用与循环体中 C) break 是无条件跳转语句,continue 不是 D) break 和 continue 的跳转范围不够明确,容易产生

11、问题 28、友元的作用是( )。 A)加强类的封装性 B)提高程序的执行效率 C)实现数据的隐藏 D)增加成员函数的种类 29、 如果在基类中将 show 声明为不带返回值的纯虚函数,正确的写法是( ) A) virtual show( )=0; B) virtual void show( ); C) virtual void show( )=0; D) void show( )=0 virtual; 30、 C+语言是从早期的 C 语言逐渐发展演变而来的.与 C 语言相比,它在求解问题方法 上进行的最大改进是( ) A) 面向过程 B) 面向对象 C) 安全性 D) 复用性 31、以下程序的

12、输出结果为: #include void func(int x,int y,int z) z=x*x+y*y; void main() int k=33; func(5,2,k); count class AA public:AA(int i,int j) A=i;B=j;coutprint();delete pa; 2. 阅读下面程序,写出运行结果( ) (程序阅读题) #include class Sample int n; static int sum; public: Sample(int x)n=x; void add()sum+=n; void disp()cout class A

13、 public: virtual void fun() coutfun(); void main() A a, *p; B b; C c; p= f(p); p= f(p); p= f(p); 4. 阅读下面程序,写出运行结果( ) (程序设计题) #include class Test private: int i; static int k; public:Test(); void Display(); ; int Test:k=0; Test:Test() i=0; k+; void Test:Display() cout void f2(int x = y; y = z; void f

14、3(int *x, int *y) int z = *x; *x = *y; *y = z; void main() int x, y; x = 10; y = 26; cout “x,y=“ x “, “ y endl; f2(x, y); cout “x,y=“ x “, “ y endl; f3( cout “x,y=“ x “, “ y endl; x+; y-; f2(y, x); cout “x,y=“ x “, “ y endl; 6.下列 shape 类是一个表示形状的抽象类,area( )为求图形面积的函数。请从 shape 类 派生三角形类(triangle)、矩形类(rectangle) ,请给出两个类中必要的成员变量和成员函数 的定义,其中必须含有具体的求面积函数。 (程序设计题) class shape public: virtual float area( )=0;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 教育学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号