C++ 谭浩强 总复习试卷2.docx
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
![preview](https://dl-preview.csdnimg.cn/87509398/0001-ff543e24fb1e0376102c7cd052c6f4bc_thumbnail-wide.jpeg)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
在C++编程语言中,有一些核心概念涉及到类的设计和成员函数的使用,这些知识点在谭浩强的C++复习试卷中被重点考察。以下是根据题目内容解析的关键知识点: 1. **静态数据成员**:静态数据成员是属于类的,而不是属于类的任何特定实例。它们可以通过类名直接访问,如`ClassName::staticDataMember`。静态数据成员的初始化必须在类外进行,并使用作用域运算符`::`。 2. **友元函数**:友元函数不是类的成员函数,它可以访问类的私有和保护成员,增强了代码的灵活性,但破坏了封装性。友元关系的声明是在类定义内部,例如`friend void F();`。 3. **非静态成员函数**:非静态成员函数在对象上下文中执行,可以访问类的所有成员,包括私有和保护成员,因为它们有隐含的`this`指针。但在静态成员函数中,没有`this`指针,因此不能直接访问非静态成员。 4. **运算符重载**:C++允许重载运算符,使其能作用于类的对象。重载的运算符函数可以是类的成员函数,也可以是全局函数。不能重载的运算符包括`.`、`->`、`::`、`sizeof`、`? :`等。后置运算符重载通常需要一个额外的参数来区分前置和后置操作。 5. **友元类**:如果一个类是另一个类的友元,那么友元类的所有成员函数都可以访问原类的私有和保护成员。但是,友元关系是非传递性的,即Y是X的友元,Z是Y的友元,并不意味着Z也是X的友元。 6. **静态成员函数**:静态成员函数不能直接访问非静态成员,因为它们不与任何特定对象关联。要访问非静态成员,必须通过一个对象实例来间接访问。 7. **成员函数的形式**:成员函数可以是虚函数、非虚函数、常量成员函数、静态成员函数等。静态成员函数没有`this`指针,而虚函数用于多态性。 8. **友元关系的特点**:友元关系是单向的,不是继承关系,也不是成员函数的关系,它使得友元能够访问类的私有和保护成员,增加了程序设计的灵活性。 在选择题部分,正确答案分别为: - C. 友元函数破坏了类的封装性和隐藏性 - D. 所有成员 - D. 静态数据成员可以直接用类名调用 - C. 静态数据成员不能受 protected 控制符的作用 - D. 友元函数通过 this 指针访问对象成员 - A. ?: - D. 在运算符函数中不能使用缺省的参数值 - D. friend A operator+ ( A & , A &); - B. 1 - A. 可以传递 判断题部分,正确的是: - 1. 对 - 2. 错,静态数据成员必须在类外初始化。 - 3. 错,静态成员函数没有`this`指针,不能直接访问非静态成员。 - 4. 错,静态成员函数的初始化工作要放在类外部进行。 理解这些概念对于深入学习C++和编写面向对象的代码至关重要。它们帮助我们更好地设计类,控制数据的访问,以及实现复杂的操作符行为。在实际编程中,合理使用这些特性可以提高代码的可读性和效率。
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/release/download_crawler_static/87509398/bg1.jpg)
![](https://csdnimg.cn/release/download_crawler_static/87509398/bg2.jpg)
![](https://csdnimg.cn/release/download_crawler_static/87509398/bg3.jpg)
![](https://csdnimg.cn/release/download_crawler_static/87509398/bg4.jpg)
剩余19页未读,继续阅读
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/a71a690a54794121897a1839eb6efba6_g11176593.jpg!1)
- 粉丝: 6713
- 资源: 3万+
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的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)