第1章 走进程序的世界 1
1.1 CPU如何工作 1
1.2 计算机语言与编译技术 3
1.3 C和C++的历史 8
1.4 如何让计算机懂你 9
1.5 小结 12
第2章 可执行文件的制作 13
2.1 在记事本中开发 13
2.2 语言与集成开发环境(IDE)工具 19
2.3 编译环境的主要参数介绍 23
2.4 应用程序的种类 34
2.5 小结 35
第3章 程序的数据表示 36
3.1 计算机的数值表示 36
3.2 指定段内存的标识——变量 43
3.3 常量 57
3.4 字符编码 63
3.5 小结 72
第4章 数据运算与程序控制 73
4.1 表达式、语句和操作符 73
4.2 操作符 75
4.3 过程化控制语句 90
4.4 小结 115
第5章 代码封装初步与函数调用机制 116
5.1 函数概述 116
5.2 函数的定义、声明和调用 116
5.3 程序的内存区域 121
5.4 全局变量与局部变量 122
5.5 递归函数 128
5.6 内联函数 131
5.7 重载函数 135
5.8 默认参数的函数 137
5.9 x86平台程序函数调用原理 138
5.10 小结 154
第6章 数据集合与C++标准模板库(STL)类模板vector 155
6.1 数组的引入 155
6.2 数组的概念 155
6.3 一维数组 156
6.4 二维数组 179
6.5 C++标准模板库类模板vector 186
6.6 小结 192
第7章 操纵地址直接访问内存 193
7.1 程序、进程与内存 193
7.2 内存模型 193
7.3 C++语言中的指针 195
7.4 动态内存分配 205
7.5 常用的几种指针 219
7.6 指针与数组 229
7.7 指针与函数 242
7.8 指针类型转换和指针的安全 264
7.9 内存管理 266
7.10 小结 272
第8章 指针的封锁——引用 274
8.1 引用简介 274
8.2 引用的本质 275
8.3 引用的限定 277
8.4 引用的应用 278
8.5 小结 292
第9章 程序的文件组织 294
9.1 函数组织 294
9.2 C++项目组成 295
9.3 命名空间(namespace) 306
9.4 小结 313
第10章 用结构组织数据——数据封装初步 314
10.1 结构体 314
10.2 指向结构变量的指针 321
10.3 结构体数组 323
10.4 结构体定义typedef struct用法 329
10.5 结构体与函数 332
10.6 结构体内存对齐 337
10.7 结构体的应用——链表 343
10.8 共用体(联合体) 352
10.9 小结 356
第11章 在程序中描叙事物 357
11.1 类 357
11.2 成员函数 361
11.3 对象的定义和内存结构 368
11.4 成员函数调用 370
11.5 成员函数指针 374
11.6 成员的访问权限 386
11.7 小结 391
第12章 事物实例的创建和销毁 392
12.1 类与对象 392
12.2 构造函数 394
12.3 常对象与常对象成员 403
12.4 析构函数 406
12.5 类构造函数初始化列表 410
12.6 构造对象的顺序 414
12.7 类对象的复制—拷贝构造函数 417
12.8 临时对象与无名对象 425
12.9 构造函数用于类型转换与关键字explicit 430
12.10 小结 433
第13章 静态类成员与友元 434
13.1 静态类成员 434
13.2 C++中的友元关系 443
13.3 小结 448
第14章 程序代码可重用性——继承 449
14.1 类的层次与继承 449
14.2 使用继承的必要性 450
14.3 继承的工作方式 451
14.4 派生类的构造函数和析构函数 455
14.5 类的继承与组合 459
14.6 多态性 462
14.7 纯虚函数 475
14.8 多重继承 477
14.9 访问控制 491
14.10 小结 494
第15章 运算符重载 495
15.1 运算符重载的作用 495
15.2 运算符重载形式 496
15.3 重载增量运算符 508
15.4 赋值运算符 513
15.5 下标运算符重载 518
15.6 重载operator new 521
15.7 转换运算符 525
15.8 运算符重载使用——智能指针原理 529
15.9 小结 531
第16章 数据的输入和输出 532
16.1 C++输入和输出 532
16.2 标准输入输出流 535
16.3 串流控制 547
16.4 文件操作 552
16.5 示例演示 563
16.6 缓存和同步 576
16.7 小结 576
第17章 模板技术 577
17.1 模板的概念 577
17.2 模板函数通式 578
17.3 类模板和模板类 585
17.4 模板编译 599
17.5 应用举例 603
17.6 小结 608
第18章 另一种程序控制机制——异常 609
18.1 异常处理的任务 609
18.2 异常的实现 618
18.3 异常的应用 627
18.4 非错误处理 634
18.5 小结 634
参考文献 636