第1章 C++基础
1.1 从C到C++
1.2 C++程序创建
1.3 C++程序结构
1.3.1 main函数
1.3.2 头文件
1.3.3 新头文件格式和名称空间
1.3.4 注释
1.4 C++简单程序设计
1.4.1 数据和数据类型
1.4.2 数据的基本输入/输出
1.4.3 运算符和表达式
1.4.4 基本语句
1.4.5 编译预处理
习题
第2章 函数和作用域
2.1 函数定义和调用
2.1.1 函数定义
2.1.2 函数的调用和声明
2.1.3 值传递
2.1.4 函数的默认形参值
2.2 C++函数特性
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.4.1 名称空间的定义
2.4.2 名称空间的使用
2.5 综合应用实例:Fibonacci数列
习题
第3章 指针和引用
3.1 指针的定义和操作
3.1.1 指针的定义和引用
3.1.2 指针的算术运算
3.1.3 const指针
3.2 指针和数组
3.2.1 指针和一维数组
3.2.2 指针和二维数组
3.2.3 字符指针和字符串
3.3 指针和函数
3.3.1 指针作为函数的参数
3.3.2 返回指针的函数
3.3.3 指向函数的指针
3.3.4 带参数的main函数
3.4 动态内存和void指针
3.4.1 new和delete运算符
3.4.2 void指针
3.5 引用
3.5.1 引用的声明和操作
3.5.2 引用传递
3.5.3 返回引用
3.6 综合应用实例:josephus问题
习题
第4章 类和对象
4.1 面向对象程序设计概念
4.2 类和对象
4.2.1 从结构到类
4.2.2 类的声明
4.2.3 对象的定义和成员的访问
4.2.4 类作用域和成员访问权限
4.3 构造函数和析构函数
4.3.1 构造函数
4.3.2 析构函数
4.3.3 new和delete
4.4 对象的使用
4.4.1 对象赋值和拷贝
4.4.2 浅拷贝和深拷贝
4.4.3 对象成员的初始化
4.4.4 const对象
4.4.5 寸象的生存期
4.5 综合应用实例:栈类设计
习题
第5章 数据共享和成员特性
5.1 静态成员
5.1.1 静态数据成员
5.1.2 静态成员函数
5.2 友元
5.2.1 友元概述
5.2.2 友元函数
5.2.3 友元类
5.3 成员其他特性
5.3.1 const成员
5.3.2 mutable成员
5.3.3 explicit成员
5.4 this指针
5.4.1 成员函数的效率
5.4.2 this指针的实质
5.5 综合应用实例:栈类静态操作
习题
第6章 继承和派生
6.1 继承和派生概述
6.1.1 继承的概念
6.1.2 继承的特性
6.1.3 派生类的定义
6.2 继承方式
6.2.1 公有继承
6.2.2 私有继承
6.2.3 保护继承
6.2.4 不同继承方式的比较
6.3 派生类的构造和析构
6.3.1 构造和析构次序
6.3.2 派生类数据成员初始化
6.3.3 基类成员的访问
6.4 二义性和虚基类
6.4.1 二义性概述
6.4.2 二义性解决方法
6.4.3 虚基类和虚继承
6.5 兼容
6.5.1 赋值兼容规则
6.5.2 赋值兼容机理
6.6 综合应用实例:继承和组合类的设计
6.6.1 类间关系
6.6.2 设计实例
习题
第7章 多态
7.1 多态和虚函数
7.1.1 多态概述
7.1.2 虚函数机制
7.1.3 虚析构函数
7.1.4 纯虚函数和抽象类
7.2 运算符重载
7.2.1 运算符重载函数
7.2.2 运算符重载限制
7.2.3 友元重载
7.2.4 转换函数
7.3 典型运算符重载
7.3.1 赋值运算符的重载
7.3.2 自增自减运算符的重载
7.3.3 下标运算符重载
7.4 综合应用实例:简单链表类模型
习题
第8章 输入/输出流
8.1 概述
8.1.1 流和流类
8.1.2 标准流对象
8.1.3 提取和插入运算符重载
8.2 格式控制
8.2.1 设置输出宽度和填充字符
8.2.2 控制实数显示
8.2.3 左右对齐输出
第9章 模板和异常处理
实验部分
综合应用实习
附录