目录 1
第一章软件危机 1
1-1库函数的失败 1
1-2面向对象的方法 2
1-3面向重用的设计 3
思考与练习 3
第二章C++指南 4
2-1参数原型 4
2-2类型安全链接 5
2-3函数名重载 5
2-4引用 6
2-5类 7
2-6常成员函数 8
2-7运算符重载 9
2-8构造函数 11
2-9析构函数 13
2-10继承 13
思考与练习 14
第三章C++和C——实例比较 15
3-1正文行——C实现 15
3-2正文行——C++实现 16
3-3正文行——构成链表 19
思考与练习 20
第四章类的设计 21
4-1抽象数据类型 21
4-2访问函数和变异函数 24
思考与练习 27
第五章继承 28
5-1正方形类 28
5-2分解——几何类 30
5-3虚函数 32
思考与练习 33
6-1 点运算 36
第六章构造完整类 36
6-2变值点运算 37
6-3三维情况 38
思考与练习 39
第七章位集合 40
7-1抽象位集合 40
7-2基本实现 41
7-3通用位集合 42
7-4弥补编绎程序的不足 44
思考与练习 46
8-1表基础 47
第八章表 47
8-2类型检查 49
8-3关于虚函数的实现注记 51
思考与练习 51
第九章数组 53
9-1数组类 53
9-2定界数组类 56
9-3改善TArray类 56
思考与练习 58
10-1 TDynamicArray∷grow()的问题 60
第十章动态数组 60
10-2通用数组 61
10-3 BoundedArray通用化 63
思考与练习 64
第十一章二叉树 65
11-1类BinaryTree的实现 65
11-2 BinarTree通用化 68
11-3比较的开销 70
思考与练习 71
第十二章哈希表 72
12-1哈希表基础 72
12-2界面的实现 74
12-3界面的扩充 76
12-4通用哈希表 77
思考与练习 79
第十三章指针类 80
13-1基本实现 80
13-2关于运算符++ 82
13-3分配和释放 82
13-4通用指针类 83
13-5引用计数 84
思考与练习 87
第十四章原子 88
14-1约束条件 88
14-2实现的缺陷 91
思考与练习 93
第十五章存贮管理 95
15-1C++的解决办法 95
第十六章性能优化 98
16-1使用内联 98
16-2寄存器分配 99
16-3引用传递 101
第十七章模板 102
17-1模板 102
17-2对变量和常量的参数化 104
17-3用模板创造数组类 104