200010高等教育面向对象程序设计C++自考[归类].pdf
![preview](https://dl-preview.csdnimg.cn/33281081/0001-d0ef26e162f3e66ac977a15b500bd008_thumbnail.jpeg)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
面向对象程序设计是一种重要的编程范式,特别是在C++语言中被广泛应用。C++是一种静态类型、编译式、通用的、大小写敏感的、不仅支持过程化编程,也支持面向对象编程的语言。以下是对给定内容中涉及的知识点的详细说明: 1. 构造函数:构造函数是一个特殊的方法,用于在创建对象时初始化对象的状态。题目中的`A(int aa, int bb)`是一个构造函数,用于设置类A的成员变量a和b。当执行`A x(4,5)`时,x.a和x.b的值应分别设为4和5,所以答案是A.4和5。 2. 默认构造函数:如果未定义任何构造函数,C++会自动提供一个无参构造函数。因此,执行`AB x;`会自动调用无参构造函数,答案是B.无参构造函数。 3. 继承:C++的类族是通过类的继承机制建立的,子类可以继承父类的属性和方法,答案是B.类的继承。 4. 文件流操作:`ofstream outf("SALARY.DAT")`用于打开名为"SALARY.DAT"的输出文件流。如果文件打开成功,`outf`的`good()`方法会返回true,否则返回false。因此,if语句的条件应该是`outf.good()`,答案是C.outf 或者 outf.good()。 5. 静态成员函数:静态成员函数属于类而不是类的实例,不能声明为虚函数,答案是C.虚函数。 6. 数据封装:数据封装是面向对象编程的核心概念之一,它防止了不同模块之间的数据非法使用,答案是D.切断了不同模块之间的数据的非法使用。 7. 引用与赋值:`int &rsd = hot;`定义了一个对hot的引用,hot的值改变会影响rsd。所以`hot = hot + 100;`之后,rsd的值是200,答案是C.200。 8. 成员访问权限:若类成员没有明确的访问修饰符,它们默认为private,答案是C.private。 9. 虚基类:虚基类的目的是消除多重继承时的二义性,答案是A.消除两义性。 10. 动态多态性:在运行时实现多态性是通过虚函数实现的,答案是D.虚函数。 填空题: 11. 封装 12. 动态/运行时;静态/编译时 13. 友元函数;友元类 14. 变量b 15. `x.a`; `X::FALSE` 16. 类名;类体 17. 构造函数 18. 实例 19. 作用域 20. 纯虚函数 改错题: 21. 错误在第5行和第10行,`c1 = pi*r*r;`和`s1 = 2*pi*r;`应该在`r = 2.8;`之前,因为`r`的值在计算之前已经改变。正确版本: ```cpp #include<iostream> const float pi = 3.1416; const float r1 = 3.2; const float r2 = 2.8; void main() { float s1, s2, c1, c2; c1 = pi * r1 * r1; s1 = 2 * pi * r1; r2 = 2.8; c2 = pi * r2 * r2; s2 = 2 * pi * r2; cout << c1 << s1 << c2 << s2 << endl; } ``` 22. 错误在`Virtual void func() = 0;`,`Virtual`应改为`virtual`,且应在类定义之外定义虚函数。正确版本: ```cpp class A { public: A() { func(); } virtual void func() = 0; }; void A::func() {} ``` 23. 错误在于头文件的引用,`.h`应改为`<iostream>`。改正后的代码: ```cpp #include <iostream> class X { public: int a; enum BOOL { FALSE, TRUE }; void fun() { a = X::FALSE; } }; ``` 以上内容详细解释了C++面向对象程序设计中的核心概念,如构造函数、继承、文件流操作、数据封装、引用、成员访问权限、虚基类、多态性、友元以及错误修正等知识点。
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/release/download_crawler_static/33281081/bg1.jpg)
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/default.jpg!1)
- 粉丝: 7
- 资源: 14万+
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)