![](http://cover.yuntu.io/69/88/9787111090984.jpg)
微信扫一扫,移动浏览光盘
简介
本书是c++的设计者关于c++语言的最主要著作之一。作者综合性地论述了c++的历史和发展,c++中各种重要机制的本质意义和设计背景,这些机制的基本用途和使用方法,讨论了c++所适合的应用领域及其未来的发展前景。本书在帮助人们理解c++语言方面的作用是不可替代的。它值得每个学习、使用和关注c++语言的专业工作者、科研人员、教师和学生阅读。 在本书中,作者还从实践的角度出发,讨论了许多与程序设计语言、系统程序设计、面向对象的技术和方法、软件系统的设计和实现技术等有关的问题,值得每一个关心这些领域及相关问题的计算机工作者和学生们阅读参考。
[center]
[b][a href=/computers/ebook/5217/kwb.htm target=_blank][font size="5"]勘 误 表[/font][/a][/b] [/center]
目录
出版者的话
专家指导委员会
译者序
前言
致读者
引言
怎样读这本书
c++ 时间表
关注使用和用户们
程序设计语言
第 一 部 分
第1章 c++的史前时代 2
1.1 simula和分布式系统 2
1.2 c与系统程序设计 4
1.3 一般性的背景 4
第2章 带类的c 7
2.1 带类的c的诞生 7
2.2 特征概览 8
2.3 类 9
.2.4 运行时的效率 11
2.5 连接模型 13
2.5.1 纯朴的实现 15
2.5.2 对象布局模型 16
2.6 静态类型检查 17
2.6.1 窄转换 18
2.6.2 警告的使用 19
2.7 为什么用c 20
2.8 语法问题 22
2.8.1 c声明的语法 22
2.8.2 结构标志与类型名 23
2.8.3 语法的重要性 24
2.9 派生类 25
2.9.1 没有虚函数时的多态性 25
2.9.2 没有模板时的容器类 26
2.9.3 对象布局模型 27
2.9.4 回顾 28
2.10 保护模型 28
2.11 运行时的保证 31
2.11.1 建构函数与析构函数 31
2.11.2 存储分配和建构函数 31
2.11.3 调用函数和返回函数 32
2.12 次要特征 32
2.12.1 赋值的重载 33
2.12.2 默认参数 33
2.13 考虑过,但是没有提供的特征 34
2.14 工作环境 35
第3章 c++的诞生 38
3.1 从带类的c到c++ 38
3.2 目标 39
3.3 cfront 40
3.3.1 生成c 41
3.3.2 分析c++ 42
3.3.3 连接问题 43
3.3.4 cfront发布 43
3.4 语言特征 45
3.5 虚函数 45
3.5.1 对象布局模型 47
3.5.2 覆盖和虚函数匹配 49
3.5.3 基成员的遮蔽 49
3.6 重载 50
3.6.1 基本重载 51
3.6.2 成员和友元 52
3.6.3 运算符函数 54
3.6.4 效率和重载 55
3.6.5 变化和新运算符 56
3.7 引用 56
3.8 常量 59
3.9 存储管理 61
3.10 类型检查 62
3.11 次要特征 63
3.11.1 注释 63
3.11.2 建构函数的记法 63
3.11.3 量化 64
3.11.4 全局变量的初始化 65
3.11.5 声明语句 67
3.12 与经典c的关系 69
3.13 语言设计的工具 71
3.14 《c++程序设计语言》(第1版) 73
3.15 有关“什么是”的论文 73
第4章 c++语言设计规则 76
4.1 规则和原理 76
4.2 一般性规则 77
4.3 设计支持规则 80
4.4 语言的技术性规则 82
4.5 低级程序设计支持规则 85
4.6 结束语 86
第5章 1985—1993年表 87
5.1 引言 87
5.2 release 2.0 87
5.3 《带标注的c++参考手册》 90
5.4 ansi和iso标准化 91
第6章 标准化 95
6.1 什么是标准 95
6.1.1 实现细节 96
6.1.2 现实的检查 97
6.2 委员会如何运作 97
6.3 净化 99
6.3.1 查找问题 99
6.3.2 临时量的生存期 103
6.4 扩充 106
6.4.1 评价准则 108
6.4.2 状况 110
6.4.3 好的扩充问题 111
6.4.4 一致性 112
6.5 扩充建议实例 112
6.5.1 关键词参数 113
6.5.2 受限指针 116
6.5.3 字符集 117
第7章 关注和使用 120
7.1 关注和使用的爆炸性增长 120
7.1.1 c++市场的缺位 121
7.1.2 会议 121
7.1.3 杂志和书籍 122
7.1.4 编译程序 122
7.1.5 工具和环境 123
7.2 c++的教与学 124
7.3 用户和应用 128
7.3.1 早期用户 129
7.3.2 后来的用户 129
7.4 商业竞争 130
7.4.1 传统语言 130
7.4.2 更新一些的语言 131
7.4.3 期望和看法 132
第8章 库 134
8.1 引言 134
8.2 c++库设计 134
8.2.1 库设计的折衷 135
8.2.2 语言特征和库的构造 135
8.2.3 处理库的多样性 135
8.3 早期的库 136
8.3.1 i/o流库 137
8.3.2 并行支持 139
8.4 其他库 142
8.4.1 基础库 142
8.4.2 持续性和数据库 143
8.4.3 数值库 143
8.4.4 专用库 143
8.5 一个标准库 144
第9章 展望 146
9.1 引言 146
9.2 回顾 146
9.2.1 c++在其预期领域取得了成功吗 147
9.2.2 c++是不是一个统一的语言 147
9.2.3 什么是最大失误 150
9.3 仅仅是一座桥梁吗 150
9.3.1 在一个很长的时期里我们还需要这座
桥梁 151
9.3.2 如果c++是答案,那么问题是什么 151
9.4 什么能够使c++更有效 154
9.4.1 稳定性和标准 154
9.4.2 教育和技术 154
9.4.3 系统方面的问题 155
9.4.4 在文件和语法之外 156
9.4.5 小结 156
第 二 部 分
第10章 存储管理 160
10.1 引言 160
10.2 将存储分配和初始化分离 161
10.3 数组分配 162
10.4 放置 162
10.5 存储释放问题 163
10.6 存储器耗尽 166
10.7 自动废料收集 167
10.7.1 可选的废料收集 167
10.7.2 可选的废料收集应该是什么样
子的 168
第11章 重载 170
11.1 引言 170
11.2 重载的解析 170
11.2.1 细粒度解析 171
11.2.2 歧义控制 172
11.2.3 空指针 175
11.2.4 overload关键字 176
11.3 类型安全的连接 177
11.3.1 重载和连接 178
11.3.2 c++连接的一种实现 179
11.3.3 回顾 180
11.4 对象的建立和复制 181
11.4.1 对复制的控制 182
11.4.2 对分配的控制 182
11.4.3 对派生的控制 183
11.4.4 按成员复制 184
11.5 记法约定 185
11.5.1 灵巧指针 185
11.5.2 灵巧引用 186
11.5.3 增量和减量的重载 189
11.5.4 重载-]* 190
11.5.5 重载逗号运算符 190
11.6 给c++增加运算符 191
11.6.1 指数运算符 191
11.6.2 用户定义运算符 193
11.6.3 复合运算符 194
11.7 枚举 195
11.7.1 基于枚举的重载 196
11.7.2 布尔类型 197
第12章 多重继承 198
12.1 引言 198
12.2 普通基类 198
12.3 虚基类 199
12.4 对象布局模型 203
12.4.1 虚基布局 205
12.4.2 虚基和强制 206
12.5 方法组合 207
12.6 有关多重继承的论战 208
12.7 委托 210
12.8 重命名 211
12.9 基和成员初始式 213
第13章 类概念的精炼 215
13.1 引言 215
13.2 抽象类 215
13.2.1 为处理错误而用的抽象类 215
13.2.2 抽象类型 217
13.2.3 语法 218
13.2.4 虚函数和建构函数 219
13.3 const成员函数 221
13.3.1 强制去掉const 221
13.3.2 const定义的精炼 222
13.3.3 易变性与强制 223
13.4 静态成员函数 224
13.5 嵌套的类 225
13.6 inherited:: 226
13.7 放松覆盖规则 228
13.8 多重方法 231
13.9 保护成员 235
13.10 改进代码生成 236
13.11 到成员的指针 236
第14章 强制 239
14.1 主要扩充 239
14.2 运行时类型信息 239
14.2.1 问题 240
14.2.2 dynamic_cast运算符 241
14.2.3 rtti的使用和误用 245
14.2.4 为什么提供一个“危险特征” 247
14.2.5 typeid()运算符 248
14.2.6 对象布局模型 251
14.2.7 一个例子:简单的i/o对象 252
14.2.8 考虑过的其他选择 254
14.3 强制的一种新记法 257
14.3.1 问题 257
14.3.2 static_cast运算符 259
14.3.3 reinterpret_cast运算符 260
14.3.4 const_cast运算符 262
14.3.5 新风格强制的影响 263
第15章 模板 266
15.1 引言 266
15.2 模板 266
15.3 类模板 269
15.4 对模板参数的限制 271
15.4.1 通过派生加以限制 272
15.4.2 通过使用加以限制 272
15.5 避免代码重复 273
15.6 函数模板 275
15.6.1 函数模板参数的推断 275
15.6.2 描述函数模板的参数 277
15.6.3 函数模板的重载 278
15.7 语法 280
15.8 组合技术 282
15.8.1 表述实现的策略 283
15.8.2 描述顺序关系 283
15.9 模板类之间的关系 285
15.9.1 继承关系 285
15.9.2 转换 287
15.9.3 成员模板 288
15.10 模板的实例化 289
15.10.1 显式的实例化 290
15.10.2 实例化点 291
15.10.3 专门化 296
15.10.4 查找模板定义 298
15.11 模板的作用 299
15.11.1 实现与界面的分离 300
15.11.2 灵活性和效率 301
15.11.3 对c++其他部分的影响 301
第16章 异常处理 303
16.1 引言 303
16.2 异常处理的目标 303
16.3 语法 305
16.4 结组 305
16.5 资源管理 306
16.6 唤醒与终止 309
16.7 非同步事件 311
16.8 多层传播 312
16.9 静态检查 312
16.10 不变式 314
第17章 名字空间 316
17.1 引言 316
17.2 问题 317
17.3 解决方案的思想 318
17.4 一个解决方案:名字空间 320
17.4.1 有关使用名字空间的观点 321
17.4.2 使名字空间投入使用 322
17.4.3 名字空间的别名 323
17.4.4 利用名字空间管理版本问题 324
17.4.5 细节 326
17.5 对于类的影响 331
17.5.1 派生类 331
17.5.2 使用基类 332
17.5.3 清除全局的static 333
17.6 与c语言的兼容性 334
第18章 c语言预处理器 336
参考文献 339
索引 347
The Design and Evolution of C++
- 名称
- 类型
- 大小
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
![loading icon](/img/book/loading_solarSystem.gif)