内容简介
第1章 计算机与程序设计
1.1计算机系统概述
1.1.1什么是计算机系统
1.1.2计算机硬件
1.1.3计算机软件
1.2程序设计基本概念
1.2.1问题求解过程
1.2.2算法与程序
1.2.3程序设计语言
1.3程序设计方法
1.3.1结构化程序设计
1.3.2面向对象程序设计
1.4 C语言与C++语言
1.4.1 C语言
1.4.2 C++语言
1.5 C++编程简介
1.5.1 C++编程的典型过程
1.5.2一个简单的C++程序
1.6程序设计风格
习题1
第2章 数据类型、运算符与表达式
2.1 C++的字符集和关键字
2.1.1字符集
2.1.2标识符
2.1.3关键字
2.2基本数据类型
2.2.1整型
2.2.2浮点型数据
2.2.3字符型数据
2.2.4布尔类型
2.3变量与常量
2.3.1常量
2.3.2变量
2.3.3符号常量
2.4类型转换
2.5运算符和表达式
2.5.1算术运算
2.5.2关系运算
2.5.3逻辑运算
2.5.4位运算
2.5.5逗号运算
2.5.6赋值运算
2.5.7特殊运算符
习题2
第3章 输入和输出
3.1 C++的输入和输出
3.2标准输入输出函数
3.2.1字符输入函数getchar
3.2.2字符输出函数putchar
3.3格式化输入输出函数
3.3.1格式化输入函数scanf
3.3.2格式化输出函数printf
3.3.3格式化输入输出函数应用举例
3.4用流进行输入输出
3.4.1通过cout流输出数据
3.4.2通过cin流输入数据
3.5流操纵算子
3.5.1设置整数基数的流操纵算子
3.5.2设置浮点数精度的流操纵算子
3.5.3设置域宽的流操纵算子
习题3
第4章 控制结构
4.1程序的语句和基本控制结构
4.2表达式语句
4.3顺序结构——复合语句
4.4选择结构
4.4.1 if选择结构
4.4.2 if-else选择结构
4.4.3 switch选择结构
4.5循环结构
4.5.1 while循环语句
4.5.2 do-while循环语句
4.5.3 for循环语句
4.6控制转移语句
4.6.1 break语句
4.6.2 continue语句
4.6.3 goto语句
4.6.4 return语句
4.7结构化程序设计方法
4.7.1结构化程序设计思想
4.7.2结构化程序设计原则
4.7.3结构化程序设计示例
4.7.4再谈程序设计风格
习题4
第5章 函数
5.1模块化程序设计
5.2预定义函数的使用
5.3函数定义与函数原型
5.3.1函数定义
5.3.2函数原型
5.4函数的调用
5.4.1函数调用的概念
5.4.2参数传递
5.4.3默认参数
5.4.4内联函数
5.5函数重载
5.6存储类别
5.6.1变量的存储特性
5.6.2自动变量
5.6.3寄存器变量
5.6.4外部变量
5.6.5静态变量
5.7作用域
5.8递归函数
5.8.1递归的概念
5.8.2递归函数应用举例
5.9预处理指令
5.9.1 # include指令
5.9.2 # define指令
5.9.3 # if、 # else、 # endif、 # if def、 # if ndef指令
习题5
第6章 数组
6.1一维数组
6.1.1一维数组的声明与初始化
6.1.2数组的应用
6.1.3数组作为函数参数
6.2多维数组
6.2.1多维数组的定义与初始化
6.2.2应用示例
6.3字符串
6.3.1字符与字符串概念
6.3.2字符串与字符数组
6.3.3字符串的输入和输出
习题6
第7章 指针
7.1指针的定义
7.2指针的运算
7.3指针与数组
7.4字符指针与字符数组
7.4.1字符串函数
7.4.2字符串函数的应用
7.5指针与const限定符
7.5.1基本概念
7.5.2用const限定指针
7.6指针和引用
7.7动态内存分配
7.7.1基本概念
7.7.2动态分配内存的应用
7.8函数指针
7.8.1函数指针的定义
7.8.2函数指针的使用
习题7
第8章 结构、联合、枚举
8.1结构
8.1.1结构的定义
8.1.2结构变量成员的引用
8.2结构的使用
8.2.1结构与函数
8.2.2结构与数组
8.2.3结构与指针
8.2.4位段
8.3联合
8.3.1联合和联合变量定义
8.3.2联合的使用
8.4枚举
8.4.1枚举和枚举型变量的定义
8.4.2枚举类型变量的赋值和使用
习题8
第9章 链表
9.1链表的基本概念
9.2单向链表
9.2.1单向链表的定义
9.2.2单向链表的操作
9.3双向链表
9.3.1双向链表的定义
9.3.2双向链表的操作
习题9
第10章 面向对象程序设计基本概念
10.1面向对象语言和面向对象方法
10.2类、对象和消息
10.2.1类和对象
10.2.2消息
10.3面向对象程序设计的特点
10.4面向对象程序的结构
习题10
第11章 类与对象
11.1数据抽象的概念
11.2抽象数据类型
11.2.1封装与信息隐藏
11.2.2接口与实现的分离
11.2.3用结构实现用户定义类型栈
11.2.4用类实现抽象数据类型栈
11.3类和对象的定义
11.3.1数据成员
11.3.2成员函数
11.3.3访问控制
11.3.4静态成员
11.3.5对象的建立
11.4构造函数
11.4.1构造函数的作用
11.4.2构造函数执行的时机
11.4.3构造函数重载
11.4.4默认构造函数
11.4.5复制构造函数
11.5析构函数
11.5.1析构函数的作用
11.5.2析构函数执行的时机
习题11
第12章 类和对象的使用
12.1类的复合
12.2 this指针
12.3 const特性
12.4友元函数和友元类
12.4.1友元函数
12.4.2友元类
习题12
第13章 运算符重载
13.1运算符重载的概念
13.1.1运算符重载的意义
13.1.2运算符重载的限制
13.2运算符成员函数与友元函数
13.3单目运算符重载
13.4重载流插入和流提取运算符
13.5双目运算符重载
13.6赋值运算符重载
13.7类型之间的转换
习题13
第14章 继承
14.1继承和派生的概念
14.2继承的定义
14.2.1派生类和基类
14.2.2继承的方式
14.2.3类的层次
14.2.4在派生类中重定义基类的函数
14.2.5派生类和基类的转换
14.3类指针
14.4继承中的构造函数和析构函数
14.5多重继承
14.6软件渐增式开发
14.6.1复合与继承
14.6.2示例
习题14
第15章 多态性
15.1多态性的概念
15.1.1静态绑定和动态绑定
15.1.2多态性的意义
15.2虚函数
15.3抽象基类和纯虚函数
15.3.1纯虚函数
15.3.2抽象类和具体类
15.4虚析构函数
15.5软件渐增式开发
习题15
第16章 文件和流
16.1基本概念
16.2通过FILE结构进行文件操作
16.2.1建立、打开和关闭文件
16.2.2写文件
16.2.3读文件
16.3通过文件流进行文件操作
16.3.1打开和建立文件
16.3.2写文件
16.3.3读文件
习题16
第17章 异常
17.1异常处理的意义
17.2异常处理基础
17.3异常的抛出和传播
17.4异常的捕获和处理
习题17
第18章 模板
18.1类属机制
18.2函数模板
18.2.1函数模板的定义
18.2.2使用函数模板
18.3类模板
18.3.1类模板的定义
18.3.2使用类模板
习题18
附录A C++运算符的优先级和结合性
附录B ASCII字符集
参考文献