第一章 预备知识
1.1 C++ 简介
1.2 C++ 简史
- OOP:面向对象编程
1.2.1 C语言
- 编译器:将高级语言翻译成特定计算机的内部语言(底层语言),使用同一高级语言的不同平台编译器可以使同一程序在不同平台上运行
- C提供处理硬件问题的能力,比如管理通信端口和磁盘驱动器
- C具备低级语言效率、硬件访问能力、高级语言通用性、可移植性
1.2.2 C语言编程原理
- 结构化编程:例如,for循环、while循环、do while循环等结构
- C语言遵循自顶向下的设计,将大型任务不断分解,分解成最小模块;利用结构化编程,反应过程性编程思想,强调过程性编程
1.2.3 面向对象编程
- OOP强调数据,不像过程性编程,试图让语言满足问题的要求,理念是设计与问题的本质特性相对应的数据格式
- C++新增了“类”的新型数据格式,先设计类,类定义描述对每个类可执行的操作,然后设计使用这些类对象的程序
- C++遵从自下向上的编程
- OOP编程隐藏和保护数据、创建可重用代码、多态、继承
1.2.4 C++和泛型编程
- 泛型编程是C++另一种编程模式,强调实现独立于特定数据类型的功能,类似工具函数,比如排序、合并链表等,一般用于C++模板
1.2.5 C++起源
1.3 可移植性和标准
- 如果在不修改代码的情况下,重新编译程序后,程序将运行良好,则改程序是可移植的
- 美国国家标准局(ANSI)制定了C语言标准后,成立一个委员会(ANSI X3J16)专门指定C++标准;国际标准化组织(ISO)的委员会(ISO-WG-21)加入后,创建联合组织ANSI/ISO,共同指定C++标准
- C++98/C++03、C++11、C99(C语言的)
1.3.1 C++的发展
1.3.2 本书遵循的C++标准
1.4 程序创建的技巧
- 程序编写流程
- 使用文本编辑器编写程序,即源代码
- 编译源代码,生成目标代码
- 将目标代码和其他代码链接起来,生成可执行代码