我的第一本C++书 游历C++世界的地图PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:陈良乔著
- 出 版 社:武汉:华中科技大学出版社
- 出版年份:2011
- ISBN:9787560969954
- 页数:376 页
第1篇叩开C++世界的门 1
第1章C++世界地图 3
1.1C++是什么 3
1.2C++的前世今生 3
1.2.1从B到C 4
1.2.2从C到C++ 4
1.2.3从C++到NETFramework的CLI 6
1.2.4最新标准C++Ox让C++重新焕发活力 8
1.2.5C++和C#不得不说的那点事儿 8
1.2.6C++世界的五大子语言 9
1.3C++世界版图 10
1.3.1Windows系统下的C++开发 10
1.3.2Linux系统下的C++开发 11
1.3.3嵌入式系统下的C++开发 11
1.4如何学好C+ 12
1.4.1将自然语言转换为C++程序设计语言 12
1.4.2“多读多写”是学好C++的不二法门 14
1.4.3和Google做朋友 14
第2章与C++第一次亲密接触 17
2.1一个C++程序的自白 17
2.1.1用VisualStudio创建C++程序 17
2.1.2以手工方式创建C++程序 20
2.1.3C++程序=预编译指令+程序代码+注释 21
2.1.4编译器和链接器 25
2.1.5C++程序的执行过程 26
2.1.6程序的两大任务:描述数据与处理数据 27
2.2基本输入/输出流 28
2.2.1标准的输入和输出对象 29
2.2.2输出格式控制 31
2.2.3读/写文件 32
2.3最常用的开发环境VisualStudio 34
2.3.1VisualC++的常用菜单 35
2.3.2VisualC++的常用视图 44
2.4C++世界旅行必备的物品 46
2.4.1编程助手VisualAssist 46
2.4.2代码配置管理工具VisualSourceSafe 48
2.4.3CodeProject和CodeGuru 48
2.4.4C++百科全书MSDN 48
第2篇欢迎来到C++世界 51
第3章C++世界众生相 53
3.1C++中的数据类型 53
3.2变量和常量 54
3.2.1声明变量 55
3.2.2给变量取个好名字 55
3.2.3变量初始化 57
3.2.4常量 57
3.2.5用宏与const关键字定义常量 59
3.3数值类型 62
3.3.1整型数值类型 62
3.3.2浮点型数值类型 63
3.4布尔类型 64
3.5字符串类型 65
3.5.1字符类型 65
3.5.2字符串类型 66
3.6数组 67
3.6.1数组的声明与初始化 68
3.6.2数组的使用 69
3.7枚举类型 71
3.8用结构体类型描述复杂的事物 73
3.8.1结构体的定义 73
3.8.2结构体的使用 74
3.9指向内存位置的指针 76
3.9.1指针就是表示内存地址的数据类型 76
3.9.2指针变量的定义 77
3.9.3指针的赋值和使用 78
第4章将语句编织成程序 81
4.1用运算符对数据进行运算 81
4.1.1用表达式表达设计意图 82
4.1.2算术运算符 82
4.1.3赋值操作符 84
4.1.4关系运算符 84
4.1.5逻辑运算符 86
4.1.6运算符之间的优先顺序 87
4.1.7将表达式组织成语句 89
4.2条件选择语句 90
4.2.1if语句 90
4.2.2并列选择的switch语句 93
4.3循环控制语句 97
4.3.1while循环 97
4.3.2dowhile循环 99
4.3.3for循环 100
4.3.4循环控制:break和connue 102
4.4从语句到程序 104
4.4.1程序是控制语句串联起来的语句 104
4.4.2豪华工资统计程序 106
第5章用函数封装程序功能 109
5.1函数就是一个大“箱子” 109
5.1.1函数的声明和定义 110
5.1.2函数调用机制 113
5.1.3函数的声明与函数调用 117
5.1.4函数参数的传递 119
5.1.5函数的返回值 121
5.2内联函数 123
5.2.1用体积换速度的内联函数 123
5.2.2内联函数的使用规则 124
5.3重载函数 125
5.3.1重载函数的声明 125
5.3.2重载函数的解析 128
5.4函数设计的基本规则 129
5.4.1函数声明的设计规则 129
5.4.2函数体的设计规则 131
第6章当C++爱上面向对象 135
6.1从结构化设计到面向对象程序设计 135
6.1.1“自顶向下逐步求精”的结构化程序设计 136
6.1.2面向对象程序设计 137
6.1.3面向对象的三座基石:封装、继承与多态 138
6.2类:当C++爱上面向对象 142
6.2.1类的声明和定义 142
6.2.2使用类创建对象 146
6.2.3构造函数和析构函数 148
6.2.4拷贝构造函数 152
6.2.5操作符重载 155
6.2.6类成员的访问控制 157
6.2.7在友元中访问类的隐藏信息 160
6.3类如何面向对象 162
6.3.1用类机制实现封装 163
6.3.2用基类和派生类实现继承 164
6.3.3用虚函数实现多态 171
6.4实战面向对象:工资管理系统 175
6.4.1从问题描述中发现对象 175
6.4.2分析对象的属性和行为 176
6.4.3实现类的属性和行为 177
6.5高手是这样炼成的 183
6.5.1C++类对象的内存模型 183
6.5.2指向自身的this指针 185
第7章C++世界的奇人异事 189
7.1一切指针都是纸老虎:彻底理解指针 189
7.1.1指针的运算 189
7.1.2灵活的void类型和void类型指针 192
7.1.3指向指针的指针 194
7.1.4指针在函数中的应用 195
7.1.5引用 198
7.2程序中的异常处理 203
7.2.1异常处理 203
7.2.2异常的函数接口声明 206
7.2.3合理使用异常处理 207
7.3编写更复杂的C++程序 208
7.3.1源文件和头文件 208
7.3.2名字空间 210
7.3.3作用域与可见性 214
7.3.4编译预处理 218
7.4高手是这样炼成的 220
7.4.1用宏定义化繁为简 220
7.4.2用typedef定义类型的别名 221
7.4.3用const保护数据 223
第3篇攀登C++世界的高峰 227
第8章用STL优雅你的程序 229
8.1跟STL做朋友 230
8.1.1算法+容器+迭代器=STL 230
8.1.2在程序中使用STL 231
8.1.3STL到底好在哪里 233
8.2用模板实现通用算法 234
8.2.1函数模板 235
8.2.2类模板 238
8.2.3模板的实例化 240
8.2.4用模板实现通用算法 241
第9章STL中的容器管理数据 245
9.1容器就是STL中的瓶瓶罐罐 245
9.1.1操作容器中的数据元素 247
9.1.2使用迭代器访问容器中的数据元素 247
9.1.3容器的使用说明书 249
9.1.4如何选择合适的容器 252
9.2vector容器是数组的最佳替代者 253
9.2.1创建并初始化vector对象 253
9.2.2vector容器的操作 256
9.2.3访问vector容器中的数据 257
9.3可以保存键值对的map容器 258
9.3.1创建并初始化map容器 258
9.3.2将数据保存到map容器中 259
9.3.3根据键找到对应的值 260
第10章用STL中的通用算法处理数据 263
10.1STL算法中的“四大帮派” 263
10.2容器元素的查找与遍历 264
10.2.1用foreach()算法遍历容器中的数据元素 264
10.2.2用find()和findif()算法实现线性查找 266
10.3容器元素的复制与变换 270
10.3.1复制容器元素:copy()算法 270
10.3.2合并容器元素:merge()算法 272
10.3.3变换容器元素transform函数 274
10.4容器元素的排序 276
10.4.1使用sort()算法对容器中的数据进行排序 276
10.4.2对排序的规则进行自定义 279
10.5实战STL算法 282
10.5.1“算法”老师带来的一堂别开生面的体育课 282
10.5.2删除容器中的冗余元素 284
第11章函数指针、函数对象与Lambda表达式 287
11.1函数指针 287
11.1.1函数指针的声明与赋值 287
11.1.2用函数指针调用函数 289
11.1.3用函数指针实现回调函数 291
11.1.4将函数指针应用到STL算法中 293
11.2函数对象 295
11.2.1定义一个函数对象 295
11.2.2利用函数对象记住状态数据 297
11.3用Lambda表达式编写更简单的函数 299
11.3.1最简单直接的函数表达形式:Lambda表达式 299
11.3.2Lambda表达式的语法规则 301
11.3.3Lambda表达式的复用 302
第12章C++世界的几件新鲜事 305
12.1用右值引用榨干C++的性能 305
12.1.1什么是右值 305
12.1.2右值引用在函数返回值上的应用 306
12.1.3STL算法中被浪费的右值 307
12.1.4右值引用如何提高性能 310
12.2智能指针shared_ptr 312
12.2.1C++的内存管理 312
12.2.2用聪明的shared_ptr解决内存管理问题 313
12.2.3智能指针的应用场景 315
12.2.4shared_ptr的使用 316
12.2.5shared_ptr与标准库容器 321
12.2.6对shared_ptr进行自定义 323
12.3用PPL进行多线程开发 326
12.3.1多核给程序设计带来的挑战 326
12.3.2PPL带来免费的午餐 327
12.3.3PPL中的并行算法 329
12.3.4PPL中的并行任务 331
12.3.5PPL中的并行对象和并行容器 334
12.3.6PPL之外的另一种选择:OpenMP 340
第13章找工作就靠它了 343
13.1打好基础 343
13.1.1基本概念 343
13.1.2函数 346
13.1.3面向对象思想 348
13.1.4类与对象 349
13.1.5STL 360
13.2积累经验 362
13.3考查智力 364
附录A接下来该读什么书 367
A1开山鼻祖:《C++程序设计语言》 367
A2初学者必看:《C++Primer中文版(第4版)》 368
A3百科全书:《代码大全第2版》 368
A4内功秘籍:《EffectiveC++(ThirdEdition)》 370
A5经验很重要:《C++编程规范》 370
后记 373
- 《TED说话的力量 世界优秀演讲者的口才秘诀》(坦桑)阿卡什·P.卡里亚著 2019
- 《小手画出大世界 恐龙世界》登亚编绘 2008
- 《近代世界史文献丛编 19》王强主编 2017
- 《课堂上听不到的历史传奇 世界政治军事名人 初中版》顾跃忠等编著 2015
- 《365奇趣英语乐园 世界民间故事》爱思得图书国际企业 2018
- 《近代世界史文献丛编 36》王强主编 2017
- 《近代世界史文献丛编 11》王强主编 2017
- 《近代世界史文献丛编 18》王强主编 2017
- 《乐队伴奏长笛世界名曲集 4》芭芭拉·哈斯勒-哈瑟 2017
- 《世界名著阅读经典 欧也妮·葛朗台 高老头 全译本 12-16岁》(法)巴尔扎克著 2017
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《大学化学实验》李爱勤,侯学会主编 2016
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017