图书介绍
C++程序设计PDF|Epub|txt|kindle电子书版本下载
- 严悍,李千目,张琨编著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302227212
- 出版时间:2010
- 标注页数:589页
- 文件大小:82MB
- 文件页数:609页
- 主题词:C语言-程序设计-高等学校-教材
PDF下载
下载说明
C++程序设计PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 概述1
1.1 C++语言发展历史1
1.2 一个简单的C++程序2
1.3 编程的基本要求4
1.4 C++程序的开发步骤4
1.5 VC++开发环境简介5
1.6 C++开发环境7
1.7 本书组织结构8
练习题10
第2章 数据类型与变量11
2.1 关键字和标识符11
2.1.1 关键字11
2.1.2 标识符13
2.1.3 标点符号13
2.1.4 分隔符13
2.2 基本数据类型14
2.2.1 布尔型15
2.2.2 字符型15
2.2.3 整型15
2.2.4 浮点型16
2.2.5 空类型16
2.3 字面常量17
2.3.1 逻辑常量17
2.3.2 整型常量17
2.3.3 实型常量17
2.3.4 字符常量18
2.3.5 字符串常量19
2.4 变量20
2.4.1 变量的说明20
2.4.2 变量的初始化20
2.4.3 变量的赋值21
2.4.4 变量的输入输出21
2.4.5 命名常量24
小结25
练习题25
第3章 运算符与表达式27
3.1 基本运算符27
3.1.1 算术运算符29
3.1.2 关系运算符30
3.1.3 逻辑运算符31
3.1.4 位运算符32
3.1.5 条件运算符35
3.1.6 赋值运算符36
3.1.7 逗号运算符37
3.1.8 自增、自减运算符38
3.1.9 sizeof运算符39
3.1.10 typeid运算符40
3.2 表达式41
3.2.1 左值表达式和右值表达式41
3.2.2 算术表达式41
3.2.3 赋值表达式42
3.2.4 关系表达式42
3.2.5 逻辑表达式43
3.2.6 逗号表达式43
3.2.7 表达式语句44
3.3 类型转换44
3.3.1 自动类型转换44
3.3.2 赋值类型转换46
3.3.3 强制类型转换47
小结49
练习题50
第4章 基本语句53
4.1 语句分类53
4.1.1 说明语句53
4.1.2 表达式语句53
4.1.3 选择语句54
4.1.4 循环语句54
4.1.5 跳转语句54
4.1.6 空语句54
4.1.7 复合语句54
4.1.8 异常处理语句55
4.1.9 标号语句55
4.2 程序的基本结构55
4.2.1 顺序结构55
4.2.2 选择结构56
4.2.3 循环结构56
4.3 选择语句57
4.3.1 条件语句58
4.3.2 开关语句61
4.4 循环语句64
4.4.1 while语句64
4.4.2 do-while语句66
4.4.3 for语句67
4.4.4 循环语句的比较69
4.4.5 循环的嵌套69
4.5 跳转语句70
4.5.1 break语句70
4.5.2 continue语句72
4.5.3 goto语句与标号语句73
4.6 例子73
小结77
练习题78
第5章 函数和编译预处理81
5.1 函数的基本概念81
5.1.1 库函数和用户定义函数81
5.1.2 无参函数和有参函数82
5.1.3 有返回值函数和无返回值函数82
5.2 函数的定义83
5.2.1 无参函数的定义83
5.2.2 有参函数的定义83
5.2.3 函数定义的要点84
5.3 函数的调用85
5.3.1 函数调用的形式85
5.3.2 函数调用的方式86
5.3.3 函数调用的要点87
5.4 函数的重载88
5.4.1 重载函数的定义89
5.4.2 重载函数的调用90
5.5 嵌套调用和递归调用91
5.5.1 函数的嵌套调用91
5.5.2 函数的递归调用92
5.6 函数原型97
5.7 特殊参数99
5.7.1 带默认值的形参99
5.7.2 可变参数101
5.8 内联函数103
5.9 作用域104
5.9.1 块作用域104
5.9.2 文件作用域105
5.9.3 函数原型作用域106
5.9.4 函数作用域107
5.10 程序运行期的存储区域107
5.10.1 静态存储区107
5.10.2 全局存储区108
5.10.3 动态存储区108
5.11 存储类108
5.11.1 auto变量108
5.11.2 register变量109
5.11.3 static变量与多文件项目109
5.11.4 extern变量112
5.11.5 存储类小结113
5.12 编译预处理114
5.12.1 包含文件114
5.12.2 无参宏115
5.12.3 有参宏119
5.12.4 条件编译120
5.12.5 条件编译示例124
5.12.6 其他预处理指令125
小结126
练习题127
第6章 数组133
6.1 一维数组133
6.1.1 一维数组的定义133
6.1.2 一维数组的初始化134
6.1.3 一维数组的使用135
6.1.4 一维数组的应用136
6.2 二维数组143
6.2.1 二维数组的定义143
6.2.2 二维数组的初始化144
6.2.3 二维数组的应用144
6.3 数组与函数148
6.4 字符数组151
6.4.1 字符数组的定义151
6.4.2 字符数组的初始化152
6.4.3 字符数组的输入输出153
6.4.4 字符数组的操作154
6.5 字符串处理函数155
6.5.1 字符串处理函数155
6.5.2 字符数组的应用158
小结160
练习题161
第7章 结构、枚举、共同体165
7.1 结构165
7.1.1 结构类型的定义165
7.1.2 定义结构变量167
7.1.3 结构变量的初始化169
7.1.4 结构变量的使用169
7.1.5 结构的数组172
7.1.6 结构中的静态成员175
7.2 位域177
7.2.1 位域的定义178
7.2.2 位域的使用179
7.3 枚举181
7.3.1 枚举类型及枚举变量181
7.3.2 枚举的使用182
7.4 共同体185
7.4.1 共同体类型的定义185
7.4.2 共同体变量的说明及使用185
7.5 类型定义typedef191
小结191
练习题192
第8章 指针和引用195
8.1 指针及指针变量195
8.1.1 地址的概念195
8.1.2 指针变量197
8.1.3 指针的运算198
8.2 指针与结构202
8.2.1 结构的指针202
8.2.2 指针作为结构成员204
8.3 指针与数组206
8.3.1 用指针访问数组206
8.3.2 指针与字符串211
8.3.3 指针的数组213
8.4 指针与函数222
8.4.1 指针作为形参222
8.4.2 函数返回指针223
8.4.3 函数的指针224
8.5 void指针与const指针229
8.5.1 void指针229
8.5.2 const指针232
8.6 动态使用内存233
8.6.1 new和delete运算符233
8.6.2 动态变量管理237
8.6.3 注意要点240
8.7 引用241
8.7.1 引用变量的说明及使用241
8.7.2 引用与数组、指针的关系242
8.7.3 引用与函数243
8.8 单向链表及其应用246
8.8.1 链表概述246
8.8.2 建立无序链表、遍历和撤销249
8.8.3 添加、查找与删除元素251
8.8.4 建立有序链表256
8.8.5 链表的应用257
小结261
练习题263
第9章 类和对象269
9.1 类269
9.1.1 类的定义269
9.1.2 类成员的可见性272
9.1.3 类的数据成员273
9.1.4 类的成员函数275
9.1.5 类与结构的区别279
9.2 对象280
9.2.1 对象的创建280
9.2.2 访问对象的成员281
9.2.3 类与对象的关系283
9.3 this指针284
9.4 类中还有什么?285
小结286
练习题287
第10章 构造函数与析构函数289
10.1 构造函数289
10.1.1 构造函数的定义289
10.1.2 默认构造函数291
10.2 析构函数292
10.3 拷贝构造函数与单参构造函数294
10.3.1 拷贝构造函数294
10.3.2 赋值操作函数298
10.3.3 单参构造函数304
10.4 复合对象与成员对象306
10.4.1 构造过程306
10.4.2 复合对象设计实例309
10.4.3 复合对象设计要点313
10.5 对象数组314
10.5.1 定义和使用314
10.5.2 对象数组作为成员315
10.6 静态成员318
10.6.1 静态数据成员318
10.6.2 静态成员函数320
10.7 const和volatile修饰符321
10.7.1 修饰符const321
10.7.2 修饰符volatile323
10.8 指针成员324
10.8.1 矩阵类324
10.8.2 双向关联329
10.9 引用成员336
10.9.1 引用的问题336
10.9.2 设计方案337
10.9.3 编程实现339
10.10 类成员的指针346
10.10.1 数据成员的指针346
10.10.2 成员函数的指针348
小结350
练习题353
第11章 类的继承357
11.1 继承与派生357
11.1.1 基类与派生类357
11.1.2 派生类的定义与构成359
11.1.3 继承方式与访问控制360
11.2 派生类的构造和析构361
11.2.1 派生类的构造函数361
11.2.2 派生类的析构函数363
11.3 二义性问题370
11.3.1 多继承造成的二义性370
11.3.2 支配规则371
11.4 虚基类373
11.4.1 共同基类造成的二义性373
11.4.2 虚基类的说明374
11.4.3 虚基类的例子376
11.5 子类型关系378
11.6 虚函数381
11.6.1 定义和使用381
11.6.2 成员函数中调用虚函数384
11.6.3 构造函数中调用虚函数385
11.6.4 虚析构函数386
11.6.5 纯虚函数与抽象类387
11.6.6 抽象类的设计389
11.7 例子:对象的链表395
11.7.1 方案设计395
11.7.2 对象结点编程397
11.7.3 对象链表编程398
11.7.4 对象链表的测试401
11.8 继承性设计要点405
小结407
练习题410
第12章 运算符重载417
12.1 一般运算符重载417
12.1.1 运算符重载函数417
12.1.2 双目运算符的重载418
12.1.3 单目运算符的重载420
12.2 用友元函数实现运算符重载422
12.2.1 友元函数422
12.2.2 定义重载函数422
12.3 特殊运算符的重载426
12.3.1 赋值操作函数426
12.3.2 类型转换函数426
12.3.3 下标运算符428
12.3.4 函数调用运算符432
12.4 例子:字符串类433
小结440
练习题441
第13章 模板445
13.1 模板的概念445
13.2 函数模板446
13.2.1 定义446
13.2.2 实例化447
13.2.3 函数模板与有参宏的区别448
13.2.4 模板函数的重载449
13.2.5 函数模板的例子450
13.3 类模板452
13.3.1 定义452
13.3.2 实例化453
13.3.3 堆栈类模板456
13.3.4 矩阵类模板459
13.4 标准模板库STL简介464
13.4.1 容器简介464
13.4.2 迭代器简介466
13.4.3 容器的共同类型和操作468
13.4.4 vector,deque和list469
13.4.5 set和multiset475
13.4.6 map和multimap477
13.4.7 stack,queue和priority_queue482
13.4.8 算法简介485
小结485
练习题486
第14章 输入输出流489
14.1 概述489
14.1.1 流Stream489
14.1.2 文件490
14.1.3 缓冲490
14.2 基本流类490
14.2.1 基本流类体系491
14.2.2 预定义的标准流与提取和插入运算符492
14.2.3 流的格式控制492
14.2.4 流的错误处理495
14.3 标准输入输出496
14.3.1 不同类型的数据输入497
14.3.2 输入操作的成员函数498
14.3.3 不同类型的数据输出500
14.3.4 输出操作的成员函数500
14.3.5 重载提取和插入运算符501
14.4 文件流503
14.4.1 文件概述503
14.4.2 文件处理的一般过程504
14.4.3 文件的打开与关闭504
14.4.4 文本文件的使用508
14.4.5 二进制文件的使用510
14.4.6 文件的随机访问513
14.5 例子:学生分数管理516
小结524
练习题525
第15章 异常529
15.1 异常的概念529
15.2 异常类型的架构531
15.3 异常处理语句533
15.3.1 throw语句533
15.3.2 try-catch语句535
15.3.3 例子538
15.4 终止处理器541
15.5 扩展新的异常类型542
15.6 异常类型的应用544
15.7 函数设计中的异常处理547
15.8 异常可能导致内存泄漏550
15.9 构造与析构中的异常551
小结554
练习题555
第16章 ANSI C++标准语法补充559
16.1 逻辑型bool559
16.2 命名空间namespace560
16.2.1 命名空间的定义560
16.2.2 空间中成员的访问562
16.3 修饰符explicit565
16.4 修饰符mutable566
16.5 RTTI与typeid567
16.6 强制类型转换569
16.6.1 static_cast运算符570
16.6.2 dynamic_cast运算符571
16.6.3 const_cast运算符573
16.6.4 reinterpret_cast运算符574
小结575
附录A ASCII码表577
附录B 常用库函数579
参考文献589