《C和C++代码精粹》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:(美)Chuck Allison著;董慧颖译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2003
  • ISBN:7115106258
  • 页数:536 页
图书介绍:

第一部分 预备知识 3

第1章 更好的C 3

1.1 两种语言简述 3

1.2 循序渐进 4

1.3 类型系统 4

1.4 函数原型 5

1.5 类型安全连接 9

1.6 引用 10

1.7 类型安全I/O 11

1.8 标准流 12

1.9 格式化 14

1.10 操纵器 18

1.11 函数重载和函数模板 22

1.12 运算符重载 22

1.13 内联函数 24

1.14 缺省参数 25

1.15 new和delete 26

1.16 语句声明 26

1.17 标准库特征 27

1.18 C的兼容性 27

1.19 小结 29

第2章 指针 31

2.1 容易出错的编程 31

2.2 基础 31

2.3 指针运算 35

2.4 传引用语义 38

2.5 普通指针 39

2.6 const指针 40

2.7 指针和一维数组 42

2.8 数组作为参数 47

2.9 字符串数组 49

2.10 指针和多维数组 50

2.11 更高深的内容 53

2.12 指向函数的指针 56

2.13 指向成员函数的指针 59

2.14 封装和不完全类型 61

2.15 小结 65

第3章 预处理器 67

3.1 #include指令 67

3.2 其他的预处理指令 68

3.3 预定义宏 70

3.4 条件编译 72

3.5 预处理运算符 73

3.6 实现assert 75

3.7 宏的魅力 76

3.8 字符集、三字符运算符和双字符运算符 79

3.9 翻译阶段 82

3.10 小结 82

第4章 C标准库之一:面向合格的程序员 83

4.1 <ctype.h> 84

4.2 <stdio.h> 87

4.3 <stdlib.h> 91

4.4 <string.h> 100

第5章 C标准库之二:面向熟练的程序员 103

5.1 <assert.h> 103

5.2 <limits.h> 104

5.3 <stddef.h> 107

5.4 <time.h> 110

5.5 字符集 112

5.6 代码页 114

5.7 字符集标准 115

5.8 ISO 10646 115

5.9 统一字符编码 116

第6章 C标准库之三:面向优秀的程序员 117

6.1 <float.h> 117

6.2 <math.h> 119

6.3 <error.h> 123

6.4 <locale.h> 124

6.5 <setjmp.h> 126

6.6 <signal.h> 127

6.7 <stdarg.h> 128

6.8 va_list作为参数 130

6.9 应用 131

6.10 结论 135

6.11 浮点数系统 135

第二部分 主要概念 145

第7章 抽象 145

7.1 数据抽象 145

7.2 运算符重载 154

7.3 具体的数据类型 158

7.4 类型抽象 164

7.5 函数抽象 166

7.6 小结 167

第8章 模板 169

8.1 泛型编程 171

8.2 函数模板 171

8.3 类模板 173

8.4 模板参数 177

8.5 模板转化 179

8.6 小结 183

第9章 位操作 185

9.1 按位运算符 185

9.2 访问单独的位 187

9.3 大型置位 193

9.4 位字符串 205

9.5 Wish List 205

9.6 bitset模板 206

9.7 vector<bool>模板特化 208

9.8 小结 209

第10章 类型转换和强制类型转换 211

10.1 整数的升级 211

10.2 降级 215

10.3 算术类型转换 216

10.4 函数原型 218

10.5 显式类型转换 220

10.6 函数风格强制类型转换 221

10.7 const的正确性 221

10.8 用户定义的类型转换 223

10.9 加强运算符[] 229

10.10 新风格强制类型转换 231

10.11 小结 233

第11章 可见性 235

11.1 名字中包含什么 235

11.2 作用域 235

11.3 最小的作用域 238

11.4 类的作用域 239

11.5 嵌套类 244

11.6 局部类 246

11.7 典型的名字空间 247

11.8 名字空间的作用域 249

11.9 生存期 250

11.10 临时对象的生存期 253

11.11 连接 254

11.12 类型安全连接 258

11.13 “语言”连接 258

11.14 小结 259

第12章 控制结构 261

12.1 结构化编程 261

12.2 分支 270

12.3 非局部分支 273

12.4 信号 277

12.5 小结 282

12.6 参考文献 282

第13章 异常 283

13.1 可选择的错误处理方法 283

13.2 堆栈展开 288

13.3 异常捕捉 290

13.4 标准异常 293

13.5 资源管理 293

13.6 构造函数和异常 298

13.7 内存管理 303

13.8 异常规范 304

13.9 错误处理策略 306

13.10 小结 309

第14章 面向对象编程 311

14.1 继承 314

14.2 不同种类的集合 316

14.3 虚函数和多态 316

14.4 抽象基类 319

14.5 实例研究:一个对象持续的框架 322

14.6 数据库访问 324

14.7 映射对象到相关模式 326

14.8 PFX的结构 327

14.9 一个代码的预排 330

14.10 小结 349

第三部分 使用标准库 353

第15章 算法 353

15.1 复杂度 354

15.2 通用算法 356

15.3 函数对象 360

15.4 函数种类 361

15.5 函数对象适配器 362

15.6 算法种类 363

15.7 小结 366

15.8 参考文献 366

第16章 容器和迭代器 367

16.1 标准容器 370

16.2 迭代器 371

16.3 迭代器种类 372

16.4 特殊用途的迭代器 373

16.5 容器适配器 376

16.6 关联容器 377

16.7 应用 377

16.8 非标准模板库容器 385

16.9 小结 387

第17章 文本处理 389

17.1 scanf 389

17.2 printf 394

17.3 子字符串 397

17.4 标准C++字符串类 403

17.5 字符串流 406

17.6 宽字符串 408

17.7 小结 408

第18章 文件处理 409

18.1 过滤器 409

18.2 二进制文件 412

18.3 记录处理 414

18.4 临时文件 419

18.5 可移植性 420

18.6 POSIX 420

18.7 文件描述符 421

18.8 通过描述符来拷贝文件 421

18.9 读目录条目 423

18.10 重定向标准错误 427

18.11 封装重定向操作 431

18.12 小结 436

第19章 时间和日期处理 437

19.1 Julian日期编码 442

19.2 用于实际工作的日期类 460

19.3 计算年的星期数 486

19.4 小结 487

19.5 参考文献 487

第20章 动态内存管理 489

20.1 参差数组 489

20.2 在标准C中使用堆 491

20.3 C++的自由存储 495

20.4 浅拷贝与深拷贝 496

20.5 处理内存分配失败 499

20.6 重载new和delete 499

20.7 配置new 501

20.8 堆的管理 503

20.9 避免内存管理 504

20.10 小结 510

附录 513

附录A C/C++的兼容性 513

附录B 标准C++算法 515

附录C 函数对象和适配器 525

附录D 有注解的参考书目 529

附录E C++标准的制定 531