Thinking in C++(C++编程哲学)
560 页
Chinese
PDF
4.5

Thinking in C++(C++编程哲学)

Thinking in C++(C++编程哲学)

作者:

年份:

简介:

引言

布鲁斯·埃克尔的著作《Thinking in C++》(中文译名《C++编程哲学》)并非一本普通的编程语言教材。这是一部基础性著作,教授的不是语法,而是C++范式下的思维方式。该书出版于2000年,至今仍是希望深入理解C++(从基础到面向对象编程的高级概念)的人士最受推崇的书籍之一。

与许多现代“速成”指南不同,埃克尔并不急于求成。他循序渐进地引导读者从简单的数据类型走向继承、多态和模板等复杂机制。本书语言生动易懂,配有大量示例和解释。这使得它成为初学者以及希望系统化知识的有经验开发者的理想选择。

本书内容

本书涵盖了20世纪90年代末至21世纪初C++几乎所有关键方面。重点放在面向对象编程(OOP)和正确的代码设计上。内容大致可分为几个主要部分:

  • C++基础:数据类型、运算符、控制结构、函数、预处理器。
  • 对象与类:类的创建、构造函数、析构函数、运算符重载、友元函数。
  • 继承与多态:虚函数、抽象类、多重继承。
  • 模板(Templates):泛型编程、容器、迭代器。
  • 异常处理:try/throw/catch机制、异常安全性。
  • 输入输出流:文件操作、格式化、操纵器。
  • 运行时类型识别(RTTI)及其他高级主题。

每一章都包含大量可直接尝试的代码示例。重要的是,埃克尔不仅展示如何编写代码,还解释了为什么必须这样做,而不是那样做。

本书适合谁

本书面向广泛读者,但尤其适用于:

  • 初学者,已经熟悉任何一门语言(如C或Python)的基础知识,并希望转向C++。
  • 理工科学生,正在学习面向对象编程和系统编程。
  • 其他语言的开发者(Java、C#),希望理解C++的哲学及其差异。
  • 有经验的C++程序员,希望更新知识或从新的角度审视熟悉的内容。

本书不要求深厚的预备知识,但假设读者具备算法和数据结构的基本理解。

读者将学到什么

阅读本书后,读者将能够:

  • 理解C++的哲学以及该语言如此设计的原因。
  • 掌握所有主要范式:过程式、面向对象和泛型编程。
  • 学会设计类,具备正确的封装、继承和多态。
  • 使用模板创建灵活且可重用的组件。
  • 编写可靠的代码,具备正确的异常处理和内存管理。
  • 处理输入输出流和文件系统。
  • 避免初学者的典型错误,如指针、引用和对象复制相关的问题。

本书优势

  • 深度与系统性。埃克尔不仅列举语言特性,还解释其用途和内在逻辑。
  • 优秀的示例。书中的代码确实可运行(基于当时的标准),并准确说明了所讨论的概念。

推荐