微信扫一扫,移动浏览光盘
简介
目录
第1章 类和对象1
1.1 从C到C++3
1.1.1 C++的诞生3
1.1.2 C++对C的扩充3
1.1.3 面向对象和面向过程的区别9
1.1.4 命名空间12
1.2 面向对象程序设计的基本概念17
1.2.1 类17
1.2.2 对象18
1.2.3 封装与数据隐藏18
1.2.4 继承18
1.2.5 多态性19
1.2.6 消息19
1.3 类和对象的定义19
1.3.1 类的定义20
1.3.2 成员函数的定义23
1.3.3 类对象的定义26
1.3.4 对象成员的访问27
1.3.5 类对象的内存分配32
1.3.6 this指针33
1.4 构造函数和析构函数35
1.4.1 构造函数的定义35
1.4.2 构造函数的重载38
1.4.3 带默认参数的构造函数40
1.4.4 析构函数42
1.4.5 拷贝构造函数和默认拷贝
构造函数43
1.5 综合应用举实例48
习题150
第2章 类和对象的进一步应用55
2.1 对象的进一步应用57
2.1.1 堆对象57
2.1.2 对象数组57
2.1.3 类对象作为成员59
2.1.4 面向对象程序中的常量62
2.2 静态成员65
2.2.1 静态数据成员65
2.2.2 静态成员函数67
2.3 友元函数和友元类71
2.3.1 友元函数71
2.3.2 友元类75
2.4 string类77
2.4.1 char型字符串77
2.4.2 string型字符串定义77
2.4.3 string类构造函数78
2.4.4 string类成员函数79
2.5 综合应用实例82
习题286
第3章 继承与派生91
3.1 继承与派生的基础知识93
3.1.1 继承与派生的基本概念93
3.1.2 派生类的声明方式94
3.1.3 派生类的构成97
3.2 类的继承方式98
3.2.1 公有继承98
3.2.2 私有继承100
3.2.3 保护继承102
3.2.4 继承方式的总结和比较102
3.3 派生类的构造函数与析构函数103
3.3.1 简单派生类的构造函数104
3.3.2 析构函数105
3.3.3 复杂派生类构造函数和析构
函数106
3.3.4 派生友元类109
3.4 基类对象与派生类对象的相互
转换110
3.5 多重继承112
3.5.1 多重继承的定义112
3.5.2 多重继承中的二义性问题114
*3.6 虚继承和虚基类119
3.6.1 虚继承和虚基类的定义119
3.6.2 虚基类及其派生类构造函数
执行顺序122
3.7 C++ 11新特性之继承构造函数和
委派构造函数124
3.7.1 继承构造函数124
3.7.2 委派构造函数125
3.8 综合应用实例126
习题3139
第4章 多态性147
4.1 多态性的概念149
4.2 运算符重载149
4.2.1 运算符重载概述149
4.2.2 运算符重载的实现150
4.2.3 单目运算符重载151
4.2.4 双目运算符重载153
4.2.5 赋值运算符重载156
4.2.6 下标运算符[ ]重载159
4.2.7 关系运算符重载161
4.2.8 类型转换运算符重载163
4.2.9 函数对象164
4.3 联编和虚函数165
4.3.1 静态联编和动态联编165
4.3.2 虚函数的引入165
4.3.3 虚函数的定义168
4.3.4 动态联编的工作机制170
4.3.5 虚析构函数171
4.4 纯虚函数和抽象类173
4.4.1 纯虚函数173
4.4.2 抽象类173
4.5 综合应用实例176
习题4181
第5章 输入/输出流183
5.1 输入/输出流的基本概念185
5.1.1 从C语言的输入/输出函数
到C++的输入/输出流185
5.1.2 流的概念及流类库186
5.1.3 流的深入探讨187
5.2 面向标准设备的输入/输出流188
5.2.1 标准流对象188
5.2.2 标准输入/输出流的
格式化189
5.2.3 用流成员函数实现输入/
输出195
5.3 面向文件的输入/输出流197
5.3.1 文件流类与文件流对象197
5.3.2 文件的打开和关闭198
5.3.3 文本文件的输入/输出
(读/写)200
5.3.4 二进制文件的输入/输出
(读/写)202
5.3.5 文件的随机访问204
5.4 面向内存的字符串流206
5.5 自定义数据类型的输入/输出210
5.6 综合应用实例211
习题5216
第6章 异常处理219
6.1 异常的概念221
6.1.1 错误处理的复杂性221
6.2 异常处理机制222
6.2.1 异常处理机制的组成222
6.2.2 异常处理的实现222
6.3 异常处理规范227
6.4 标准库中的异常类229
6.5 C++11引入的异常处理230
6.6 综合应用实例231
习题6236
第7章 模板237
7.1 模板的概念239
7.2 函数模板239
7.2.1 函数模板语法240
7.2.2 函数模板实例化241
7.2.3 函数模板中模板参数隐式
转换产生的错误243
7.2.4 用户定义的参数类型245
7.2.5 函数模板和模板函数247
7.2.6 使用函数模板需要注意的
问题247
7.3 类模板248
7.3.1 类模板的语法249
7.3.2 类模板实例化250
7.3.3 类模板的派生和继承258
7.3.4 使用类模板的注意事项260
7.4 C++11标准的模板新内容261
7.4.1 模板的右尖括号261
7.4.2 别名模板261
7.4.3 函数模板的默认参数262
7.4.4 变长参数264
7.5 综合应用实例266
习题7271
第8章 标准模板库(STL)的介绍及应用273
8.1 标准模板库(STL)的概念275
8.1.1 什么是STL275
8.1.2 STL的组成部分275
8.1.3 STL对C++的影响276
8.2 容器276
8.2.1 容器简介276
8.2.2 容器的结构277
8.2.3 容器的使用278
8.3 迭代器284
8.3.1 输入迭代器285
8.3.2 输出迭代器285
8.3.3 前向迭代器286
8.3.4 双向迭代器287
8.3.5 随机存取迭代器287
8.3.6 迭代器的使用287
8.4 算法288
8.4.1 算法和函数对象288
8.4.2 算法分类介绍289
8.5 综合应用实例293
习题8296
第9章 面向对象程序设计实例297
9.1 图书管理系统需求分析299
9.1.1 需求分析的任务299
9.1.2 图书管理系统需求描述299
9.1.3 图书管理系统需求299
9.2 图书管理系统需求模型300
9.2.1 图书管理系统用例图300
9.2.2 图书管理系统用例规约301
9.3 图书管理系统设计308
9.3.1 分析类308
9.3.2 顺序图308
9.3.3 设计类图309
9.3.4 系统结构设计310
9.4 图书管理系统的实现311
9.4.1 类的定义311
9.4.2 类的实现313
9.4.3 用户界面设计322
9.4.4 系统主函数323
9.4.5 系统管理员功能模块325
9.4.6 普通管理员功能328
习题9331
附录A 常用容器与算法介绍332
A.1 常用容器332
A.1.1 向量(vector)332
A.1.2 列表(list)334
A.1.3 双队列(deque)336
A.1.4 栈(stack)339
A.1.5 队列(queue)339
A.2 常用算法340
A.2.1 非修正算法340
A.2.2 修正算法341
A.2.3 排序算法343
A.2.4 数值计算算法344
附录B C++新特性345
附录C C/C++跨平台开源开发环境——
Code::Blocks351
参考文献356
1.1 从C到C++3
1.1.1 C++的诞生3
1.1.2 C++对C的扩充3
1.1.3 面向对象和面向过程的区别9
1.1.4 命名空间12
1.2 面向对象程序设计的基本概念17
1.2.1 类17
1.2.2 对象18
1.2.3 封装与数据隐藏18
1.2.4 继承18
1.2.5 多态性19
1.2.6 消息19
1.3 类和对象的定义19
1.3.1 类的定义20
1.3.2 成员函数的定义23
1.3.3 类对象的定义26
1.3.4 对象成员的访问27
1.3.5 类对象的内存分配32
1.3.6 this指针33
1.4 构造函数和析构函数35
1.4.1 构造函数的定义35
1.4.2 构造函数的重载38
1.4.3 带默认参数的构造函数40
1.4.4 析构函数42
1.4.5 拷贝构造函数和默认拷贝
构造函数43
1.5 综合应用举实例48
习题150
第2章 类和对象的进一步应用55
2.1 对象的进一步应用57
2.1.1 堆对象57
2.1.2 对象数组57
2.1.3 类对象作为成员59
2.1.4 面向对象程序中的常量62
2.2 静态成员65
2.2.1 静态数据成员65
2.2.2 静态成员函数67
2.3 友元函数和友元类71
2.3.1 友元函数71
2.3.2 友元类75
2.4 string类77
2.4.1 char型字符串77
2.4.2 string型字符串定义77
2.4.3 string类构造函数78
2.4.4 string类成员函数79
2.5 综合应用实例82
习题286
第3章 继承与派生91
3.1 继承与派生的基础知识93
3.1.1 继承与派生的基本概念93
3.1.2 派生类的声明方式94
3.1.3 派生类的构成97
3.2 类的继承方式98
3.2.1 公有继承98
3.2.2 私有继承100
3.2.3 保护继承102
3.2.4 继承方式的总结和比较102
3.3 派生类的构造函数与析构函数103
3.3.1 简单派生类的构造函数104
3.3.2 析构函数105
3.3.3 复杂派生类构造函数和析构
函数106
3.3.4 派生友元类109
3.4 基类对象与派生类对象的相互
转换110
3.5 多重继承112
3.5.1 多重继承的定义112
3.5.2 多重继承中的二义性问题114
*3.6 虚继承和虚基类119
3.6.1 虚继承和虚基类的定义119
3.6.2 虚基类及其派生类构造函数
执行顺序122
3.7 C++ 11新特性之继承构造函数和
委派构造函数124
3.7.1 继承构造函数124
3.7.2 委派构造函数125
3.8 综合应用实例126
习题3139
第4章 多态性147
4.1 多态性的概念149
4.2 运算符重载149
4.2.1 运算符重载概述149
4.2.2 运算符重载的实现150
4.2.3 单目运算符重载151
4.2.4 双目运算符重载153
4.2.5 赋值运算符重载156
4.2.6 下标运算符[ ]重载159
4.2.7 关系运算符重载161
4.2.8 类型转换运算符重载163
4.2.9 函数对象164
4.3 联编和虚函数165
4.3.1 静态联编和动态联编165
4.3.2 虚函数的引入165
4.3.3 虚函数的定义168
4.3.4 动态联编的工作机制170
4.3.5 虚析构函数171
4.4 纯虚函数和抽象类173
4.4.1 纯虚函数173
4.4.2 抽象类173
4.5 综合应用实例176
习题4181
第5章 输入/输出流183
5.1 输入/输出流的基本概念185
5.1.1 从C语言的输入/输出函数
到C++的输入/输出流185
5.1.2 流的概念及流类库186
5.1.3 流的深入探讨187
5.2 面向标准设备的输入/输出流188
5.2.1 标准流对象188
5.2.2 标准输入/输出流的
格式化189
5.2.3 用流成员函数实现输入/
输出195
5.3 面向文件的输入/输出流197
5.3.1 文件流类与文件流对象197
5.3.2 文件的打开和关闭198
5.3.3 文本文件的输入/输出
(读/写)200
5.3.4 二进制文件的输入/输出
(读/写)202
5.3.5 文件的随机访问204
5.4 面向内存的字符串流206
5.5 自定义数据类型的输入/输出210
5.6 综合应用实例211
习题5216
第6章 异常处理219
6.1 异常的概念221
6.1.1 错误处理的复杂性221
6.2 异常处理机制222
6.2.1 异常处理机制的组成222
6.2.2 异常处理的实现222
6.3 异常处理规范227
6.4 标准库中的异常类229
6.5 C++11引入的异常处理230
6.6 综合应用实例231
习题6236
第7章 模板237
7.1 模板的概念239
7.2 函数模板239
7.2.1 函数模板语法240
7.2.2 函数模板实例化241
7.2.3 函数模板中模板参数隐式
转换产生的错误243
7.2.4 用户定义的参数类型245
7.2.5 函数模板和模板函数247
7.2.6 使用函数模板需要注意的
问题247
7.3 类模板248
7.3.1 类模板的语法249
7.3.2 类模板实例化250
7.3.3 类模板的派生和继承258
7.3.4 使用类模板的注意事项260
7.4 C++11标准的模板新内容261
7.4.1 模板的右尖括号261
7.4.2 别名模板261
7.4.3 函数模板的默认参数262
7.4.4 变长参数264
7.5 综合应用实例266
习题7271
第8章 标准模板库(STL)的介绍及应用273
8.1 标准模板库(STL)的概念275
8.1.1 什么是STL275
8.1.2 STL的组成部分275
8.1.3 STL对C++的影响276
8.2 容器276
8.2.1 容器简介276
8.2.2 容器的结构277
8.2.3 容器的使用278
8.3 迭代器284
8.3.1 输入迭代器285
8.3.2 输出迭代器285
8.3.3 前向迭代器286
8.3.4 双向迭代器287
8.3.5 随机存取迭代器287
8.3.6 迭代器的使用287
8.4 算法288
8.4.1 算法和函数对象288
8.4.2 算法分类介绍289
8.5 综合应用实例293
习题8296
第9章 面向对象程序设计实例297
9.1 图书管理系统需求分析299
9.1.1 需求分析的任务299
9.1.2 图书管理系统需求描述299
9.1.3 图书管理系统需求299
9.2 图书管理系统需求模型300
9.2.1 图书管理系统用例图300
9.2.2 图书管理系统用例规约301
9.3 图书管理系统设计308
9.3.1 分析类308
9.3.2 顺序图308
9.3.3 设计类图309
9.3.4 系统结构设计310
9.4 图书管理系统的实现311
9.4.1 类的定义311
9.4.2 类的实现313
9.4.3 用户界面设计322
9.4.4 系统主函数323
9.4.5 系统管理员功能模块325
9.4.6 普通管理员功能328
习题9331
附录A 常用容器与算法介绍332
A.1 常用容器332
A.1.1 向量(vector)332
A.1.2 列表(list)334
A.1.3 双队列(deque)336
A.1.4 栈(stack)339
A.1.5 队列(queue)339
A.2 常用算法340
A.2.1 非修正算法340
A.2.2 修正算法341
A.2.3 排序算法343
A.2.4 数值计算算法344
附录B C++新特性345
附录C C/C++跨平台开源开发环境——
Code::Blocks351
参考文献356
C/C++程序设计教程——面向对象分册(第3版)
光盘服务联系方式: 020-38250260 客服QQ:4006604884