Object-Oriented Programming in C++ by Robert Lafore
### 关于《C++面向对象编程》第三版 本书由Robert Lafore撰写,出版社为Macmillan Computer Publishing,ISBN号为157169160x,出版日期为1998年11月25日。本书是关于C++面向对象编程的经典著作之一,特别是针对Standard C++(标准C++)以及面向对象设计方面进行了大量的更新与改进。 #### 关键知识点概述 1. **Standard C++**:Standard C++是在1997年秋季最终确定的C++标准,它引入了许多新的特性到C++语言中。 2. **模板和异常**:这些特性已经被编译器制造商采纳,并在本书中进行了介绍。 3. **标准模板库(STL)**:STL是一个重要的新特性,本书新增了一章专门介绍这个强大的库。 4. **新的头文件**:Standard C++引入了一系列新的头文件,这些头文件提供了更强大的功能和更好的兼容性。 5. **string类**:Standard C++中新增了一个string类,用于处理字符串,比传统的C风格字符串更安全、更易于使用。 6. **新的类型转换方式**:Standard C++提供了一些新的类型转换机制,如static_cast、dynamic_cast等,这些转换方式更加安全且语义明确。 7. **命名空间(namespaces)**:命名空间用于解决名字冲突问题,是Standard C++中的一个重要特性。 8. **面向对象设计(OOD)**:随着近年来对面向对象设计的重视程度不断增加,本书新增了一章来讨论这一主题。 9. **跨平台兼容性**:本书强调了代码的跨平台兼容性,确保代码能够在多种Standard C++编译器下正常工作。 #### Standard C++的重要变化 - **标准化的模板库(STL)**:STL是Standard C++的一个重要组成部分,它包括了一系列容器、迭代器、算法和函数对象,极大地简化了C++程序的设计和编写。例如,`vector`容器可以方便地管理动态数组,而`sort`算法则提供了快速排序的功能。 - **新的头文件**:Standard C++引入了一些新的头文件,比如`<string>`代替了原来的`<cstring>`,提供了更丰富的字符串操作接口。 - **类型安全的转换**:为了提高代码的安全性和可读性,Standard C++引入了新的类型转换语法,例如`static_cast<int>(x)`、`dynamic_cast<Base*>(derived_ptr)`等,相比于旧式的类型转换(`(int)x`)更为安全和明确。 - **命名空间**:命名空间是Standard C++中用于解决名字冲突的关键特性,通过将不同的代码段组织到不同的命名空间中,可以避免全局变量和函数的名字冲突问题。 #### 面向对象设计章节 书中新增的面向对象设计章节涵盖了如何有效地设计面向对象程序,包括但不限于以下内容: - **设计模式**:介绍了常见的设计模式,如单例模式、工厂模式等,这些模式可以帮助开发者更好地组织代码结构。 - **继承和多态**:深入探讨了继承和多态的概念及其在实际编程中的应用,帮助读者理解如何构建灵活的类层次结构。 - **封装**:强调了封装的重要性,以及如何通过封装来隐藏对象内部的实现细节,从而增强代码的健壮性和安全性。 - **聚合和组合**:讲解了聚合和组合的区别,以及它们在面向对象设计中的作用。 #### 跨平台兼容性 由于Standard C++的标准化,本书强调了代码的跨平台兼容性,作者通过测试确保书中的示例代码能够同时在Microsoft和Borland等编译器环境下正确运行。尽管如此,考虑到不同编译器之间的差异性,作者还是对代码进行了必要的调整以确保其兼容性。 《C++面向对象编程》第三版是一本内容丰富、覆盖广泛的知识宝典,不仅深入浅出地介绍了Standard C++的新特性,还特别关注了面向对象设计的最佳实践。无论是对于初学者还是有经验的开发人员来说,本书都是一个宝贵的资源。
剩余987页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助