A Tour of C++ - 第2章:基础语法与类型

基本信息

  • 书名:The C++ Programming Language, Third Edition
  • 作者:Bjarne Stroustrup
  • 章节:第2章 A Tour of C++
  • 页数:24页
  • 文件大小:117.14 KB

核心内容

2.1 什么是C++?

C++是一种通用目的编程语言,偏向系统编程,是更好的C语言,支持:

  • 数据抽象
  • 面向对象编程
  • 泛型编程

本章目的是给出C++的整体概览和关键技术,不是提供详细的语言定义信息。

2.2 编程范式

面向对象编程是一种编写”好”程序的技巧——一套问题的解决方法。

区分两个概念:

  • 支持(support):语言提供机制,使编程风格方便(合理简单、安全、高效)
  • 启用(enable):需要异常的努力或技能才能写出这样的程序

示例:Fortran77可以写结构化程序,C可以写面向对象程序,但这样做不必要地困难。

关键编程范式

  1. 过程式编程(Procedural):结构化程序,函数和数据分离
  2. 模块化(Modularity):将程序分成独立模块
  3. 分别编译(Separate compilation):不同文件独立编译后链接
  4. 异常处理(Exception handling):处理错误和异常情况的机制
  5. 数据抽象(Data abstraction):隐藏实现细节,暴露接口
  6. 用户定义类型(User-defined types):class, struct等
  7. 具体类型(Concrete types):基本数据类型如int, double
  8. 抽象类型(Abstract types):通过接口定义的行为集合
  9. 虚函数(Virtual functions):多态的核心机制
  10. 容器(Containers):存储其他对象的对象
  11. 算法(Algorithms):对数据进行操作的工具

核心设计原则

  • 零开销原则(Zero-overhead principle)
  • 面向问题编程(Problem-oriented programming)
  • 抽象数据类型(ADT)
  • 泛型编程支持

与其他知识关联

可行动点

  • 重温Stroustrup原文理解C++设计理念
  • 对比现代C++(C++11/14/17)与第3版的差异