内容简介
第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.5.4综合应用实例: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左右对齐输出
8.3 使用输入/输出成员函数
8.3.1输入操作的成员函数
8.3.2输出操作的成员函数
8.3.3流的错误处理
8.4文件流
8.4.1文件和文件流概述
8.4.2文件流的使用方法
8.4.3顺序文件操作
8.4.4随机文件操作
8.5标准C++ string类
8.5.1 string构造和对象定义
8.5.2 string类输入
8.5.3 string的属性
8.5.4 string常用操作
8.6综合应用实例:文件操作
习题
第9章 模板和异常处理
9.1函数模板
9.1.1函数模板定义
9.1.2函数模板实例化
9.1.3函数模板具体化
9.1.4函数模板重载
9.2类模板
9.2.1类模板的定义
9.2.2类模板的实例化
9.3标准模板库(STL)
9.3.1迭代器(Iterator)
9.3.2向量(vector)、链表(list)和双端队列(deque)
9.3.3栈(stack)和队列(queue)
9.3.4映像(map)
9.3.5集合(set)
9.4异常及其传统处理方法
9.4.1判断函数返回值或形参
9.4.2使用全局的标志变量
9.4.3使用exit和abort
9.5使用C++异常处理
9.5.1 try/throw/catch结构
9.5.2 C++异常处理过程
9.5.3嵌套异常和栈展开
9.6综合应用实例:栈类模板设计
习题
实验部分
实验1 认识Visual C++ 6.0中文版开发环境
实验2 基本程序设计1
实验3 基本程序设计2
实验4 类和对象
实验5 继承和派生
实验6 多态
实验7 输入/输出流
实验8 模板和标准模板库
综合应用实习
附录
附录A 常用C++库函数及类库
附录B ASCII码表
附录C 格式算子
附录D 格式控制成员函数
附录E 运算符优先级和结合性
附录F 使用typedef