C++程序设计语言PDF电子书下载
- 电子书积分:14 积分如何计算积分?
- 作 者:李雁妮,陈平,王献青编著
- 出 版 社:西安:西安电子科技大学出版社
- 出版年份:2009
- ISBN:9787560621517
- 页数:406 页
第一部分 C++语言的基本机制第1章 绪论 2
1.1 C++语言的发展历史及特点 2
1.1.1 C++语言的发展历史 2
1.1.2 C++语言的特点 3
1.2 学习C++语言的注意事项 3
1.2.1 如何学习C++ 3
1.2.2 如何使用本教材 4
1.3 C++语言中一些重要的程序设计理念 5
小结 7
练习题 7
第2章 C++语言概述 8
2.1 C++语言及程序设计范型 8
2.1.1 C++语言的概念 8
2.1.2 程序设计范型 9
2.1.3 第一个C++程序及C++程序结构 9
2.2 过程程序设计范型 10
2.2.1 过程程序设计范型介绍 10
2.2.2 变量和算术运算符 11
2.2.3 条件判断与循环 12
2.2.4 指针与数组 12
2.3 模块化程序设计范型 13
2.4 数据抽象 14
2.5 面向对象程序设计范型 17
2.6 类属/通用程序设计范型 19
小结 21
练习题 21
第3章 类型与声明 22
3.1 类型 22
3.2 C++中的基本数据类型 24
3.2.1 布尔类型 24
3.2.2 字符类型 25
3.2.3 整数类型 26
3.2.4 浮点类型 27
3.2.5 C++数据类型存储量的大小 29
3.3 void类型 30
3.4 枚举类型 30
3.5 类型的声明与定义 32
3.5.1 明的语法规则 33
3.5.2 C++中的标识符 34
3.5.3 标识符的作用域 35
3.5.4 typedef 35
3.6 类型转换 36
小结 37
练习题 38
第4章 运算符与语句 39
4.1 C++运算符概述 39
4.1.1 算术运算符和自增、自减运算符 40
4.1.2 关系和逻辑运算符 42
4.1.3 位运算符 43
4.1.4 内存申请与释放运算符new和delete 46
4.1.5 赋值运算符 47
4.1.6 类型转换运算符 47
4.1.7 C++运算符概览及其优先级次序 49
4.2 C++语句 50
4.2.1 表达式语句和空语句 51
4.2.2 注释语句及意义 51
4.2.3 复合语句 52
4.2.4 选择判断语句 52
4.2.5 循环语句 57
4.2.6 跳转语句 62
小结 65
练习题 66
第5章 指针、数组和结构 67
5.1 指针 67
5.1.1 指针与指针变量 67
5.1.2 为什么要使用指针变量 68
5.1.3 指针变量的声明与定义 69
5.1.4 指针变量的操作 69
5.1.5 常量零(0) 71
5.2 数组 71
5.2.1 数组的定义与初始化 71
5.2.2 字符串字面值 73
5.3 指向数组的指针 74
5.3.1 指向一维数组的指针 74
5.3.2 指向多维数组的指针 75
5.3.3 取数组元素及数组的遍历 76
5.4 指向函数的指针 80
5.5 指向void*的指针 81
5.6 常量 82
5.7 引用 85
5.8 结构 88
小结 94
练习题 95
第6章 函数 96
6.1 函数的声明 98
6.1.1 函数接口/原型声明 98
6.1.2 函数的定义 98
6.2 函数的参数传递 99
6.3 函数的返回值 101
6.4 函数名的过载/重载 102
6.4.1 函数名过载/重载的基本概念 102
6.4.2 重载函数的匹配规则 102
6.4.3 重载函数与函数的返回类型 105
6.4.4 重载与作用域 105
6.5 缺省的函数参数值 106
6.6 递归 107
6.6.1 递归的基本概念 107
6.6.2 递归的定义及递归函数的编写模式 108
6.7 参数数目可变的函数 110
6.8 函数指针 114
6.9 综合示例 115
小结 128
练习题 128
第7章 名字空间与异常处理 129
7.1 模块与接口的基本概念 129
7.2 名字空间 131
7.2.1 名字空间的基本概念 131
7.2.2 名字空间中的名字解析 132
7.2.3 模块的多重接口 137
7.3 异常处理 138
7.4 综合示例 141
小结 146
练习题 147
第8章 源文件和程序 148
8.1 分别编译 149
8.2 链接 149
8.2.1 链接与一致性的基本概念 149
8.2.2 头文件 151
8.2.3 #include指令 152
8.2.4 用户头文件内容的设计 152
8.3 头文件的有效使用 154
8.4 命令行参数 156
8.5 程序 158
8.5.1 程序的执行 158
8.5.2 程序的终止 159
小结 159
练习题 160
第二部分 C++的抽象机制 162
第9章 类与对象 162
9.1 类的基本概念 162
9.2 类中成员 163
9.2.1 类中的成员 163
9.2.2 类的访问控制 165
9.2.3 类的构造函数 168
9.2.4 类的静态成员 170
9.2.5 对象的拷贝 173
9.2.6 常量(Const或称只读)成员函数 175
9.2.7 对象的自身引用——this 176
9.3 定义有效、高质量的类 178
9.4 对象 180
9.4.1 对象是什么 180
9.4.2 C++中对象的类别 182
9.4.3 对象的析构——析构函数 183
9.4.4 默认构造函数 184
9.4.5 几种主要类别对象的构造与析构 184
9.4.6 对象的构造与析构次序 187
9.5 综合示例 189
小结 195
练习题 196
第10章 操作符重载 198
10.1 概述 198
10.2 操作符重载 199
10.2.1 二元操作符的重载 200
10.2.2 一元操作符的重载 201
10.3 类型转换操作符 202
10.3.1 类型转换函数 202
10.3.2 歧义性(二义性)问题 204
10.4 友员 204
10.5 大型对象 206
10.6 类中应具有的基本操作 207
10.7 几种特殊操作符的重载 211
10.7.1 下标运算符的重载 211
10.7.2 函数调用操作符的重载 212
10.7.3 指针/指向操作符的重载 214
10.7.4 自增、自减操作符的重载 216
10.7.5 流输入与流输出操作符的重载 217
10.8 综合示例 219
小结 237
练习题 238
第11章 继承与多态 239
11.1 概述 239
11.2 子类/派生类 240
11.2.1 子类/派生类与继承的基本概念 240
11.2.2 子类对象的存储结构 242
11.2.3 子类中的成员 242
11.2.4 子类的构造与析构函数 243
11.2.5 子类对象拷贝 246
11.2.6 public、protected和private继承 247
11.3 虚函数与多态性 253
11.3.1 类型域 253
11.3.2 虚拟函数 255
11.3.3 抽象基类与实例类 257
11.3.4 多态 259
11.3.5 虚拟的析构函数 261
11.4 运行时的类型识别 263
11.4.1 dynamic_cast运算符 263
11.4.2 type_id运算符 266
11.5 指向类成员的指针 266
11.5.1 指向类成员的指针 266
11.5.2 指向类的成员函数指针的应用场合 268
11.6 多重继承 270
11.7 综合示例 273
小结 279
练习题 280
第12章 模板 283
12.1 概述 283
12.2 类模板 285
12.2.1 类模板的定义 285
12.2.2 类模板参数及其限制 288
12.3 函数模板 289
12.3.1 函数模板的定义 289
12.3.2 函数模板的重载 290
12.3.3 函数调用的匹配原则 292
12.3.4 编写函数模板时的注意事项 292
12.4 模板与继承 297
12.5 综合示例 299
小结 313
练习题 313
第13章 异常处理 314
13.1 概述 314
13.2 C++异常处理结构try、throw和catch 315
13.2.1 抛出异常 315
13.2.2 重新抛出异常 316
13.2.3 捕获所有的异常 317
13.3 异常类层次 317
13.4 捕获new操作所产生的异常 318
13.5 C++标准库异常层次 321
小结 321
练习题 322
第三部分 C++标准模板库STL简介第14章 string类 324
14.1 string概述 324
14.2 string类的构造函数与析构函数 324
14.3 string类重载的操作符 325
14.4 string类的成员函数 328
14.5 string的基本操作 329
14.5.1 元素访问 329
14.5.2 赋值 330
14.5.3 从string转换到C风格的字符串 331
14.5.4 字符串的比较 331
14.5.5 附加与插入 333
14.5.6 查找子串 334
14.5.7 替换 335
14.5.8 求子串 336
14.5.9 string对象的大小和容量 336
14.5.10 输入输出 336
14.6 C风格的字符串 337
14.6.1 C字符串操作函数 337
14.6.2 将数值字符串转换到数值的函数 338
14.6.3 字符分类 338
14.7 迭代器 339
14.8 字符串流处理 340
小结 340
练习题 340
第15章 C++输入/输出系统基础 342
15.1 C++中的流概述 342
15.1.1 C++的输入/输出流类库中的头文件 343
15.1.2 输入/输出流类和对象 343
15.2 输出流 344
15.3 输入流 345
15.3.1 流读取运算符 345
15.3.2 用于输入的一些成员函数 346
15.4 成员函数read和write的无格式输入/输出 347
15.5 流操纵算子 347
15.5.1 设置整数流的基数 348
15.5.2 设置浮点数精度 348
15.5.3 设置输出域宽 350
小结 351
练习题 352
第16章 标准模板库STL简介 353
16.1 STL概述 353
16.1.1 容器 353
16.1.2 算法 353
16.1.3 迭代器 354
16.1.4 其它STL元素 354
16.2 容器类 355
16.3 STL类的一般操作原理 356
16.4 vector容器 357
16.4.1 通过迭代器访问vector矢量中的元素 360
16.4.2 vector的其它成员函数 361
16.4.3 在vector中存储自定义类型的对象 363
16.5 list容器 364
16.6 deque双向队列 369
16.7 关联容器 369
16.7.1 map关联容器类 369
16.7.2 set和multiset关联容器类 372
16.8 容器适配器 373
16.8.1 stack适配器 373
16.8.2 queue适配器 375
16.8.3 priority_queue适配器 376
16.9 算法 376
16.9.1 fill、fill_n、generate与generate_n算法 378
16.9.2 equal、mismatch和lexicographica_compare算法 380
16.9.3 remove、remove_if、remove_copy和remove_copy_if算法 382
16.9.4 replace、replace_if、replace_copy和replace_copy_if算法 384
16.9.5 一些常用的数学算法 386
16.9.6 基本查找与排序算法 388
16.9.7 swap、iter_swap和swap_ranges算法 390
16.9.8 copy_backward、mergeunique和reverse算法 392
16.9.9 inplace_merge、unique_copy和reverse_copy算法 393
16.9.10 集合操作 394
16.9.11 lower_bound、upper_bound和equal_range算法 396
16.9.12 堆排序 398
16.9.13 min和max算法 400
16.10 函数对象 401
16.10.1 一元函数对象与二元函数对象 401
16.10.2 STL内置的函数对象 401
16.10.3 绑定器 404
参考文献 406
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《幼儿园课程资源丛书 幼儿园语言教育资源》周兢编 2015
- 《Cinema 4D电商美工与视觉设计案例教程》樊斌 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019