c++程序设计语言(第4部分:标准库)是C++之父Bjarne Stroustrup编写的全新作品,也是通常用户所说的c++程序设计语言第四版,是无可替代的C++领域经典的参考书,详细的介绍C++11的各项新特性、功能等。全书知识结构完整,对C++语言介绍非常全面,作者按照基本功能、抽象机制、标准库的递进层次组织全书,由浅入深地把C++语言的方方面面呈现在读者的面前,让无论各种水平、各种背景的读者都能在本书中找到适合自己的切入点和学习路径,欢迎免费下载。
内容介绍
c++程序设计语言(第4部分:标准库)(原书第4版)是C++领域经典的参考书,介绍了C++11的各项新特性和新功能。全书共分四部分。部分(第1~5章)是引言,包括C++的背景知识,C++语言及其标准库的简要介绍;第二部分(第6~15章)介绍C++的内置类型和基本特性,以及如何用它们构造程序;第三部分(第16~29章)介绍C++的抽象机制及如何用这些机制编写面向对象程序和泛型程序;第四部分(第30~44章)概述标准库并讨论一些兼容性问题。由于篇幅问题,原书中文版分两册出版,分别对应原书的至三部分和第四部分。这一册为第四部分。
新的C++11标准使得程序员能以更清晰、更简明、更直接的方式表达思想,从而编写出更快速和高效的代码。在最新出版的第4版中,Stroustrup博士针对最新的C++11标准,为所有希望更有效使用C++语言编程的程序员重新组织、扩展和全面重写了这本C++语言的权威参考书和学习指南,细致、全面、综合地阐述了C++语言及其基本特性、抽象机制、标准库和关键设计技术。
新的C++11标准的内容包括
支持并发处理。
正则表达式、资源管理指针、随机数、改进的容器(包括哈希表)以及其他很多特性。
通用和一致的初始化机制、更简单的for语句、移动语义、基础的Unicode支持。
lambda表达式、通用常量表达式、控制类缺省定义的能力、可变参数模板、模板别名、用户定义的字面值常量。
兼容性问题。
c++程序设计语言第四版章节目录
出版者的话
译者序
前言
第3版前言
第2版前言
第1版前言
第四部分标准库
第30章标准库概览 2
30.1引言 2
30.1.1标准库设施 2
30.1.2设计约束 4
30.1.3描述风格 4
30.2头文件 5
30.3语言支持 9
30.3.1initializer_list支持 9
30.3.2范围for支持 10
30.4错误处理 10
30.4.1异常 10
30.4.2断言 14
30.4.3system_error 15
30.5建议 23
第31章STL容器 24
31.1引言 24
31.2容器概览 24
31.2.1容器表示 27
31.2.2对元素的要求 28
31.3操作概览 30
31.3.1成员类型 32
31.3.2构造函数、析构函数和赋值操作 33
31.3.3大小和容量 34
31.3.4迭代器 35
31.3.5元素访问 36
31.3.6栈操作 36
31.3.7列表操作 37
31.3.8其他操作 38
31.4容器 38
31.4.1vector 38
31.4.2链表 42
31.4.3关联容器 44
31.5容器适配器 53
31.5.1stack 54
31.5.2queue 55
31.5.3priority_queue 56
31.6建议 57
第32章STL算法 59
32.1引言 59
32.2算法 59
32.2.1序列 60
32.3策略实参 61
32.3.1复杂性 62
32.4不修改序列的算法 63
32.4.1for_each() 63
32.4.2序列谓词 63
32.4.3count() 63
32.4.4find() 64
32.4.5equal()和mismatch() 64
32.4.6search() 65
32.5修改序列的算法 66
32.5.1copy() 66
32.5.2unique() 67
32.5.3remove()和replace() 68
32.5.4rotate()、random_shuffle()和partition() 69
32.5.5排列 70
32.5.6fill() 70
32.5.7swap() 71
32.6排序和搜索 71
32.6.1二分搜索 74
32.6.2merge() 75
32.6.3集合算法 75
32.6.4堆 76
32.6.5lexicographical_compare() 77
32.7最大值和最小值 78
32.8建议 79
第33章STL迭代器 80
33.1引言 80
33.1.1迭代器模型 80
33.1.2迭代器类别 81
33.1.3迭代器萃取 82
33.1.4迭代器操作 85
33.2迭代器适配器 85
33.2.1反向迭代器 86
33.2.2插入迭代器 88
33.2.3移动迭代器 89
33.3范围访问函数 89
33.4函数对象 90
33.5函数适配器 91
33.5.1bind() 92
33.5.2mem_fn() 93
33.5.3function 93
33.6建议 95
第34章内存和资源 96
34.1引言 96
34.2“拟容器” 96
34.2.1array 97
34.2.2bitset 99
34.2.3vector 103
34.2.4元组 104
34.3资源管理指针 107
34.3.1unique_ptr 108
34.3.2shared_ptr 111
34.3.3weak_ptr 113
34.4分配器 115
34.4.1默认分配器 116
34.4.2分配器萃取 118
34.4.3指针萃取 119
34.4.4限域的分配器 119
34.5垃圾收集接口 121
34.6未初始化内存 123
34.6.1临时缓冲区 123
34.6.2raw_storage_iterator 124
34.7建议 125
第35章工具 126
35.1引言 126
35.2时间 126
35.2.1duration 127
35.2.2time_point 129
35.2.3时钟 131
35.2.4时间萃取 132
35.3编译时有理数运算 132
35.4类型函数 134
35.4.1类型萃取 134
35.4.2类型生成器 138
35.5其他工具 142
35.5.1move()和forward() 142
35.5.2swap() 143
35.5.3关系运算符 143
35.5.4比较和哈希type_info 144
35.6建议 145
第36章字符串 146
36.1引言 146
36.2字符分类 146
36.2.1分类函数 146
36.2.2字符萃取 147
36.3字符串 148
36.3.1string与C风格字符串 149
36.3.2构造函数 151
36.3.3基本操作 152
36.3.4字符串I/O 153
36.3.5数值转换 154
36.3.6类STL操作 155
36.3.7find系列函数 157
36.3.8子串 158
36.4建议 159
第37章正则表达式 160
37.1正则表达式 160
37.1.1正则表达式符号表示 161
37.2regex 165
37.2.1匹配结果 166
37.2.2格式化 169
37.3正则表达式函数 170
37.3.1regex_match() 170
37.3.2regex_search() 171
37.3.3regex_replace() 172
37.4正则表达式迭代器 173
37.4.1regex_iterator 173
37.4.2regex_token_iterator 175
37.5regex_traits 176
37.6建议 177
第38章I/O流 178
38.1引言 178
38.2I/O流层次 180
38.2.1文件流 180
38.2.2字符串流 182
38.3错误处理 183
38.4I/O操作 184
38.4.1输入操作 185
38.4.2输出操作 187
38.4.3操纵符 189
38.4.4流状态 190
38.4.5格式化 194
38.5流迭代器 200
38.6缓冲 201
38.6.1输出流和缓冲区 204
38.6.2输入流和缓冲区 205
38.6.3缓冲区迭代器 205
38.7建议 207
第39章区域设置 209
39.1处理文化差异 209
39.2类locale 211
39.2.1命名locale 213
39.2.2比较string 216
39.3类facet 217
39.3.1访问locale中的facet 218
39.3.2一个简单的用户自定义facet 218
39.3.3locale和facet的使用 221
39.4标准facet 221
39.4.1string比较 223
39.4.2数值格式化 226
39.4.3货币格式化 231
39.4.4日期和时间格式化 235
39.4.5字符分类 238
39.4.6字符编码转换 241
39.4.7消息 244
39.5便利接口 248
39.5.1字符分类 248
39.5.2字符转换 248
39.5.3字符串转换 249
39.5.4缓冲区转换 250
39.6建议 250
第40章数值计算 252
40.1引言 252
40.2数值限制 252
40.2.1数值限制宏 255
40.3标准数学函数 255
40.4复数complex 257
40.5数值数组:valarray 258
40.5.1构造函数和赋值操作 258
40.5.2下标操作 260
40.5.3运算 261
40.5.4切片 263
40.5.5slice_array 265
40.5.6推广切片 265
40.6推广数值算法 267
40.6.1accumulate() 267
40.6.2inner_product() 268
40.6.3partial_sum()和adjacent_difference() 269
40.6.4iota() 270
40.7随机数 270
40.7.1引擎 272
40.7.2随机设备 274
40.7.3分布 274
40.7.4C风格随机数 277
40.8建议 278
第41章并发 279
41.1引言 279
41.2内存模型 280
41.2.1内存位置 281
41.2.2指令重排 282
41.2.3内存序 282
41.2.4数据竞争 283
41.3原子性 285
41.3.1atomic类型 287
41.3.2标志和栅栏 291
41.4volatile 292
41.5建议 292
第42章线程和任务 293
42.1引言 293
42.2线程 293
42.2.1身份 294
42.2.2构造 295
42.2.3析构 296
42.2.4join() 297
42.2.5detach() 298
42.2.6名字空间this_thread 299
42.2.7杀死thread 300
42.2.8thread_local数据 300
42.3避免数据竞争 302
42.3.1互斥量 302
42.3.2多重锁 309
42.3.3call_once() 311
42.3.4条件变量 311
42.4基于任务的并发 315
42.4.1future和promise 316
42.4.2promise 317
42.4.3packaged_task 318
42.4.4future 320
42.4.5shared_future 323
42.4.6async() 323
42.4.7一个并行find()示例 325
42.5建议 328
第43章C标准库 330
43.1引言 330
43.2文件 330
43.3printf()系列函数 331
43.4C风格字符串 334
43.5内存 335
43.6日期和时间 336
43.7杂项 339
43.8建议 340
第44章兼容性 341
44.1引言 341
44.2C++11扩展 341
44.2.1语言特性 341
44.2.2标准库组件 343
44.2.3弃用特性 344
44.2.4应对旧版本C++实现 344
44.3C/C++兼容性 345
44.3.1C和C++是兄弟 345
44.3.2“静默”差异 346
44.3.3不兼容C++的C代码 347
44.3.4不兼容C的C++代码 350
44.4建议 351
使用说明
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
发表评论
0条评论软件排行榜
热门推荐
南方Plus电脑版 v12.6.024.61M / 简体中文
开源阅读电脑版 v3.25.06280014.23M / 简体中文
网易新闻电脑版 v114.499.82M / 简体中文
数据挖掘导论 官方版61.61M / 简体中文
吉利博瑞用户手册 pdf高清版57.89M / 简体中文
PHP语言精粹电子书 pdf扫描版25.72M / 简体中文
Scala程序设计第二版 pdf高清完整版15.83M / 简体中文
C++黑客编程揭秘与防范第2版 冀云pdf扫描版54.58M / 简体中文
C++多核高级编程 修斯pdf扫描版57.21M / 简体中文
HotSpot实战(陈涛著) 中文pdf扫描版82M / 简体中文