C++ STL标准程序库开发指南(第2版)

C++ STL标准程序库开发指南(第2版)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: ,
2017-01
版次: 2
ISBN: 9787113223779
定价: 79.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 532页
字数: 892千字
52人买过
  • 本书献给喜欢C++ STL的朋友,当您看见这本书时您应该对C++ STL已有一定的了解,希望继续深造;或者您已经暗下决心来学习它。那么本书将是您佳的选择。 

    如果您已经有了一些C/C++基础,那么学习起来会更加轻松。 第1章 类模板简介 

    1.1 C++为什么需要模板功能 1 

    1.1.1 计算机实在是太傻了 1 

    1.1.2 类和函数重载部分解决了这个问题 2 

    1.1.3 泛型编程完美思路 2 

    1.1.4 C++的模板 3 

    1.1.5 C++ STL的渊源 3 

    1.2 C++基本概念通览 4 

    1.2.1 命名空间 4 

    1.2.2 头文件 5 

    1.2.3 面向对象的程序设计 6 

    1.2.4 C++中的声明和定义 8 

    1.2.5 最简单的C++程序 10 

    1.2.6 指针 12 

    1.2.7 函数 13 

    1.2.8 文件 17 

    1.2.9 程序的编译和链接 20 

    1.2.10 程序的启动和终止 21 

    1.2.11 异常处理 21 

    1.3 类模板定义 21 

    1.3.1 模板库(STL) 22 

    1.3.2 STL之父—Alexander Stepanov 22 

    1.3.3 类模板的英文原始定义 22 

    1.3.4 类模板实例化 22 

    1.3.5 类模板的成员函数 24 

    1.3.6 类模板的静态数据成员 24 

    1.4 成员模板 26 

    1.5 友元模板 27 

    1.6 函数模板 28 

    1.7 类模板的参数 31 

    1.7.1 关键字typename的使用 32 

    1.7.2 关键字typename与关键字class 33 

    1.8 模板库简介 34 

    1.8.1 C语言和STL的演变历史 34 

    1.8.2 STL的组件 34 

    1.8.3 STL的基本结构 35 

    1.8.4 STL的编程概述 38 

    1.8.5 学习重点提示 40 

    1.9 本章小结 40 

    第2章 C++中的字符串 

    2.1 字符串库简述 41 

    2.2 字符的特点 42 

    2.3 字符串类模板(basic_string模板类) 43 

    2.4 字符串操作的通用函数 44 

    2.4.1 构造器和析构器 45 

    2.4.2 大小和容量 46 

    2.4.3 元素存取(访问) 47 

    2.4.4 字符串比较 49 

    2.4.5 字符串内容修改和替换 51 

    2.4.6 字符串连接 57 

    2.4.7 字符串I/O操作 57 

    2.4.8 字符串的搜索和查找 58 

    2.4.9 字符串对迭代器的支持 62 

    2.4.10 字符串对配置器的支持 63 

    2.5 本章小结 64 

    第3章 容器 

    3.1 容器的概念 65 

    3.1.1 容器成员和函数 65 

    3.1.2 容器的种类和数据结构 66 

    3.2 序列式容器概述 67 

    3.3 序列式容器——vector类模板 68 

    3.3.1 vector类基础 68 

    3.3.2 vector类的成员函数 72 

    3.3.3 vector高级编程 76 

    3.4 序列式容器——list类模板 84 

    3.4.1 list的定义和容量 85 

    3.4.2 list容器基础成员函数 90 

    3.4.3 运算符函数 94 

    3.4.4 其他重要成员函数 96 

    3.5 序列式容器——deque(双端队列)类模板 102 

    3.5.1 容器deque和容器vector的对比 102 

    3.5.2 容器deque的定义和容量 103 

    3.5.3 deque容器基础成员函数 104 

    3.5.4 deque容器的高级编程 107 

    3.5.5 deque的模板函数 109 

    3.6 关联式容器概述 110 

    3.7 关联式容器——set/multiset类模板 110 

    3.7.1 集合set的定义 110 

    3.7.2 set和multiset的容量、搜寻和统计 113 

    3.7.3 set和multiset的迭代器相关函数和赋值函数 116 

    3.7.4 set和multiset的插入和移除 118 

    3.7.5 set和multiset的比较运算符 120 

    3.8 关联式容器——map/multimap类模板 121 

    3.8.1 map和multimap基础 122 

    3.8.2 map和multimap成员函数 126 

    3.8.3 map和multimap的高级编程 128 

    3.9 特殊容器用法 136 

    3.9.1 bitset类模板 136 

    3.9.2 stack类模板 139 

    3.9.3 队列queue类模板 141 

    3.9.4 Priority Queues类模板 144 

    3.10 本章小结 146 

    第4章 C++中的算法 

    4.1 算法库简介 147 

    4.2 非修改性序列算法 148 

    4.2.1 for each 算法 148 

    4.2.2 元素计数算法 152 

    4.2.3 最小值和最大值算法 153 

    4.2.4 搜寻算法 155 

    4.2.5 区间比较算法 163 

    4.3 变动性算法 167 

    4.3.1 复制 167 

    4.3.2 转换 169 

    4.3.3 互换 173 

    4.3.4 赋值 174 

    4.3.5 替换 175 

    4.3.6 逆转 176 

    4.3.7 旋转 178 

    4.3.8 排列 179 

    4.4 排序及相关操作 183 

    4.4.1 全部元素排序 183 

    4.4.2 局部排序 185 

    4.4.3 根据某个元素排序 187 

    4.4.4 堆(Heap)操作 189 

    4.4.5 合并排序 191 

    4.4.6 搜索 194 

    4.5 删除算法 196 

    4.6 本章小结 199 

    第5章 迭代器(Iterator) 

    5.1 迭代器及其特性 200 

    5.2 头文件简述 201 

    5.3 迭代器类型详述 201 

    5.3.1 输入型迭代器 201 

    5.3.2 输出型迭代器 202 

    5.3.3 前向迭代器 202 

    5.3.4 双向迭代器 202 

    5.3.5 随机存取迭代器 202 

    5.3.6 vector迭代器的递增和递减 203 

    5.4 迭代器配接器 203 

    5.4.1 逆向迭代器 204 

    5.4.2 插入型迭代器 205 

    5.4.3 流迭代器 207 

    5.5 迭代器辅助函数 210 

    5.5.1 advance()迭代器前进函数 210 

    5.5.2 distance()迭代器距离 211 

    5.5.3 iter_swap()交换两个迭代器所指内容 212 

    5.6 本章小结 213 

    第6章 STL的数值计算 

    6.1 复数运算 214 

    6.1.1 最简单的复数运算例题 214 

    6.1.2 复数成员函数 215 

    6.1.3 复数运算符 216 

    6.1.4 复数运算 216 

    6.1.5 复数的超越函数 218 

    6.2 数组(向量)运算 221 

    6.2.1 类valarray 221 

    6.2.2 数组子集类——slice类和类模板slice_array 228 

    6.2.3 类gslice和类模板gslice_array 230 

    6.2.4 类mask_array 232 

    6.2.5 类indirect_array 233 

    6.3 通用数值计算 235 

    6.3.1 求和(accumulate) 235 

    6.3.2 内积(inner_product) 236 

    6.3.3 部分和(partial_sum) 238 

    6.3.4 序列相邻差(adjacent_difference) 239 

    6.4 全局性数学函数 241 

    6.5 本章小结 243 

    第7章 输入/输出流 

    7.1 IOStream简介 244 

    7.1.1 Stream对象 244 

    7.1.2 Stream类别 245 

    7.1.3 Stream操作符 246 

    7.1.4 操控器(Manipulators) 246 

    7.2 IOStream 基本类和标准IOStream对象 247 

    7.2.1 和IOStream类相关的头文件 247 

    7.2.2 标准Stream操作符 247 

    7.2.3 Stream状态 251 

    7.2.4 标准输入和输出函数 254 

    7.3 格式化 259 

    7.3.1 格式标志 259 

    7.3.2 bool类型数据的格式控制 260 

    7.3.3 详解“字段宽度、充填字符和位置调整” 261 

    7.3.4 正记号与大写字符 263 

    7.3.5 数值进制 264 

    7.3.6 浮点数输出 266 

    7.3.7 一般性格式定义 267 

    7.4 StreamBuffer类介绍 268 

    7.4.1 Stream缓冲区 268 

    7.4.2 缓冲区迭代器 269 

    7.4.3 自定义缓冲区 271 

    7.5 基于字符串的流 277 

    7.5.1 streambuf类 277 

    7.5.2 类模板basic_istringstream 279 

    7.5.3 类模板basic_ostringstream 279 

    7.5.4 类模板basic_stringstream 280 

    7.6 基于文件的流 280 

    7.6.1 文件标志及其使用 281 

    7.6.2 随机存取 290 

    7.6.3 4个类模板简介 294 

    7.6.4 C库中的文件存取功能概述 296 

    7.7 本章小结 298 

    第8章 异常处理 

    8.1 异常概念和基本思想 299 

    8.1.1 异常的概念 299 

    8.1.2 异常的分类 300 

    8.1.3 异常的捕捉和处理 302 

    8.1.4 资源管理 304 

    8.1.5 异常和效率 306 

    8.1.6 异常的描述 307 

    8.1.7 未捕捉的异常 309 

    8.2 异常类及几个重要问题 311 

    8.2.1 类exception 311 

    8.2.2 调用abort() 316 

    8.2.3 堆栈解退 318 

    8.2.4 错误代码 319 

    8.2.5 异常的迷失 319 

    8.2.6 异常处理的局限性 323 

    8.3 处理异常详述 324 

    8.3.1 异常处理的实现机制 325 

    8.3.2 异常处理语句的语法 326 

    8.3.3 异常处理不唤醒 326 

    8.3.4 函数声明 326 

    8.3.5 使用异常 326 

    8.4 异常的特殊处理函数 327 

    8.5 本章小结 328 

    第9章 通用工具 

    9.1 通用工具库简介 329 

    9.1.1 相等比较 329 

    9.1.2 小于比较 329 

    9.1.3 复制构造 332 

    9.1.4 默认构造 332 

    9.1.5 配置器要求 332 

    9.1.6 运算符 333 

    9.1.7 对组(pairs) 334 

    9.2 动态内存管理 339 

    9.2.1 默认配置器 339 

    9.2.2 raw storage iterator 341 

    9.2.3 temporary buffers(临时缓冲区) 341 

    9.2.4 特定算法 341 

    9.2.5 C函数库中的内存管理函数 342 

    9.3 堆的内存分配 343 

    9.3.1 new和delete运算符 343 

    9.3.2 分配固定维数的数组 343 

    9.3.3 分配动态内存数组 344 

    9.3.4 处理堆耗尽 345 

    9.4 辅助功能 345 

    9.4.1 数值极限 345 

    9.4.2 最大最小值(较大较小值) 348 

    9.4.3 两值交换 349 

    9.4.4 辅助性比较 351 

    9.4.5 头文件cstdlib和cstddef简介 352 

    9.5 日期和时间 352 

    9.5.1 3个类型 352 

    9.5.2 结构体tm 353 

    9.5.3 相关时间函数 353 

    9.5.4 时间示例 356 

    9.6 模板类auto_ptr 358 

    9.6.1 auto_ptr类构造函数 359 

    9.6.2 类auto_ptr的成员及转换 359 

    9.6.3 使用auto_ptr类 360 

    9.7 本章小结 363 

    第10章 语言支持 

    10.1 类型 364 

    10.2 执行属性 364 

    10.2.1 类模板numeric_limits及其成员 365 

    10.2.2 float_round_style和float_denorm_style 367 

    10.2.3 数值极限的特化 368 

    10.2.4 库函数 368 

    10.2.5 应用举例 369 

    10.3 程序的启动和终止 376 

    10.4 动态内存管理 376 

    10.4.1 内存的分配和释放 377 

    10.4.2 内存分配错误 379 

    10.4.3 应用举例 380 

    10.5 类型标识符 382 

    10.5.1 类type_info 382 

    10.5.2 类bad_cast 383 

    10.5.3 类bad_typeid 384 

    10.5.4 操作符typeid 384 

    10.5.5 操作符dynamic_cast 385 

    10.5.6 应用举例 385 

    10.6 异常处理 387 

    10.6.1 异常类(class exception) 387 

    10.6.2 violating exception-specifications 388 

    10.6.3 abnormal termination 389 

    10.6.4 未捕获异常(uncaught_exception) 390 

    10.6.5 应用举例 390 

    10.7 其他运行支持 392 

    10.7.1 概述 392 

    10.7.2 应用举例 393 

    10.8 本章小结 396 

    第11章 检测库详解 

    11.1 异常类Exception 397 

    11.1.1 类logic_error 397 

    11.1.2 类domain_error 398 

    11.1.3 类invalid_argument 399 

    11.1.4 类length_error 400 

    11.1.5 类out_of_range 401 

    11.1.6 类runtime_error 402 

    11.1.7 类range_error 403 

    11.1.8 类overflow_error 404 

    11.1.9 类underflow_error(下溢出) 405 

    11.2 assertions(断言) 406 

    11.3 错误编码 408 

    11.4 本章小结 409 

    第12章 国际化库详解 

    12.1 国际化问题和国际化元素 410 

    12.2 多种字符编码 411 

    12.2.1 宽字符和多字节文本 411 

    12.2.2 字符特性 412 

    12.2.3 特殊字符国际化 414 

    12.3 类locale 414 

    12.3.1 类locale概述 414 

    12.3.2 类locale的facet 417 

    12.3.3 区域表示和混合区域表示 420 

    12.3.4 流和区域 423 

    12.3.5 刻面的处理 424 

    12.4 标准locale的分类 426 

    12.4.1 类ctype 426 

    12.4.2 数值类的locale类 440 

    12.4.3 刻面numeric punctuation 447 

    12.4.4 类collate 449 

    12.4.5 time类(category) 451 

    12.4.6 C库locale 457 

    12.5 本章小结 458 

    第13章 仿函数 

    13.1 仿函数的概述 459 

    13.1.1 仿函数的概念 459 

    13.1.2 仿函数的作用 460 

    13.2 预定义仿函数 467 

    13.3 辅助用仿函数 468 

    13.3.1 一元组合函数配接器 469 

    13.3.2 二元组合函数配接器 471 

    13.4 关系仿函数 472 

    13.4.1 等于(equal_to()) 472 

    13.4.2 不等于(not_equal_to()) 473 

    13.4.3 小于(less()) 474 

    13.4.4 大于(greater()) 475 

    13.4.5 大于等于(greater_equal)和小于等于(less_equal) 475 

    13.5 逻辑仿函数 476 

    13.5.1 谓词 476 

    13.5.2 逻辑仿函数 477 

    13.6 算术仿函数 482 

    13.6.1 加减乘除运算仿函数(plus) 482 

    13.6.2 “求余”仿函数和“求反”仿函数 484 

    13.7 其他类型的仿函数 485 

    13.7.1 证和映射 486 

    13.7.2 仿函数hash和subtractive_rng 489 

    13.8 适配器 489 

    13.8.1 成员函数适配器 490 

    13.8.2 其他适配器 495 

    13.9 本章小结 504 

    第14章 配置器 

    14.1 使用配置器 505 

    14.2 C++标准程序库的默认配置器(标准配置器) 507 

    14.3 自定义配置器 508 

    14.4 配置类的详细讨论 509 

    14.4.1 型别 509 

    14.4.2 配置类的成员函数 509 

    14.4.3 广义配置器 510 

    14.4.4 动态存储 510 

    14.4.5 C风格的分配 511 

    14.5 未初始化的内存 511 

    14.6 配置器举例 513 

    14.7 本章小结 514 

    参考文献
  • 内容简介:
    本书献给喜欢C++ STL的朋友,当您看见这本书时您应该对C++ STL已有一定的了解,希望继续深造;或者您已经暗下决心来学习它。那么本书将是您佳的选择。 

    如果您已经有了一些C/C++基础,那么学习起来会更加轻松。
  • 目录:
    第1章 类模板简介 

    1.1 C++为什么需要模板功能 1 

    1.1.1 计算机实在是太傻了 1 

    1.1.2 类和函数重载部分解决了这个问题 2 

    1.1.3 泛型编程完美思路 2 

    1.1.4 C++的模板 3 

    1.1.5 C++ STL的渊源 3 

    1.2 C++基本概念通览 4 

    1.2.1 命名空间 4 

    1.2.2 头文件 5 

    1.2.3 面向对象的程序设计 6 

    1.2.4 C++中的声明和定义 8 

    1.2.5 最简单的C++程序 10 

    1.2.6 指针 12 

    1.2.7 函数 13 

    1.2.8 文件 17 

    1.2.9 程序的编译和链接 20 

    1.2.10 程序的启动和终止 21 

    1.2.11 异常处理 21 

    1.3 类模板定义 21 

    1.3.1 模板库(STL) 22 

    1.3.2 STL之父—Alexander Stepanov 22 

    1.3.3 类模板的英文原始定义 22 

    1.3.4 类模板实例化 22 

    1.3.5 类模板的成员函数 24 

    1.3.6 类模板的静态数据成员 24 

    1.4 成员模板 26 

    1.5 友元模板 27 

    1.6 函数模板 28 

    1.7 类模板的参数 31 

    1.7.1 关键字typename的使用 32 

    1.7.2 关键字typename与关键字class 33 

    1.8 模板库简介 34 

    1.8.1 C语言和STL的演变历史 34 

    1.8.2 STL的组件 34 

    1.8.3 STL的基本结构 35 

    1.8.4 STL的编程概述 38 

    1.8.5 学习重点提示 40 

    1.9 本章小结 40 

    第2章 C++中的字符串 

    2.1 字符串库简述 41 

    2.2 字符的特点 42 

    2.3 字符串类模板(basic_string模板类) 43 

    2.4 字符串操作的通用函数 44 

    2.4.1 构造器和析构器 45 

    2.4.2 大小和容量 46 

    2.4.3 元素存取(访问) 47 

    2.4.4 字符串比较 49 

    2.4.5 字符串内容修改和替换 51 

    2.4.6 字符串连接 57 

    2.4.7 字符串I/O操作 57 

    2.4.8 字符串的搜索和查找 58 

    2.4.9 字符串对迭代器的支持 62 

    2.4.10 字符串对配置器的支持 63 

    2.5 本章小结 64 

    第3章 容器 

    3.1 容器的概念 65 

    3.1.1 容器成员和函数 65 

    3.1.2 容器的种类和数据结构 66 

    3.2 序列式容器概述 67 

    3.3 序列式容器——vector类模板 68 

    3.3.1 vector类基础 68 

    3.3.2 vector类的成员函数 72 

    3.3.3 vector高级编程 76 

    3.4 序列式容器——list类模板 84 

    3.4.1 list的定义和容量 85 

    3.4.2 list容器基础成员函数 90 

    3.4.3 运算符函数 94 

    3.4.4 其他重要成员函数 96 

    3.5 序列式容器——deque(双端队列)类模板 102 

    3.5.1 容器deque和容器vector的对比 102 

    3.5.2 容器deque的定义和容量 103 

    3.5.3 deque容器基础成员函数 104 

    3.5.4 deque容器的高级编程 107 

    3.5.5 deque的模板函数 109 

    3.6 关联式容器概述 110 

    3.7 关联式容器——set/multiset类模板 110 

    3.7.1 集合set的定义 110 

    3.7.2 set和multiset的容量、搜寻和统计 113 

    3.7.3 set和multiset的迭代器相关函数和赋值函数 116 

    3.7.4 set和multiset的插入和移除 118 

    3.7.5 set和multiset的比较运算符 120 

    3.8 关联式容器——map/multimap类模板 121 

    3.8.1 map和multimap基础 122 

    3.8.2 map和multimap成员函数 126 

    3.8.3 map和multimap的高级编程 128 

    3.9 特殊容器用法 136 

    3.9.1 bitset类模板 136 

    3.9.2 stack类模板 139 

    3.9.3 队列queue类模板 141 

    3.9.4 Priority Queues类模板 144 

    3.10 本章小结 146 

    第4章 C++中的算法 

    4.1 算法库简介 147 

    4.2 非修改性序列算法 148 

    4.2.1 for each 算法 148 

    4.2.2 元素计数算法 152 

    4.2.3 最小值和最大值算法 153 

    4.2.4 搜寻算法 155 

    4.2.5 区间比较算法 163 

    4.3 变动性算法 167 

    4.3.1 复制 167 

    4.3.2 转换 169 

    4.3.3 互换 173 

    4.3.4 赋值 174 

    4.3.5 替换 175 

    4.3.6 逆转 176 

    4.3.7 旋转 178 

    4.3.8 排列 179 

    4.4 排序及相关操作 183 

    4.4.1 全部元素排序 183 

    4.4.2 局部排序 185 

    4.4.3 根据某个元素排序 187 

    4.4.4 堆(Heap)操作 189 

    4.4.5 合并排序 191 

    4.4.6 搜索 194 

    4.5 删除算法 196 

    4.6 本章小结 199 

    第5章 迭代器(Iterator) 

    5.1 迭代器及其特性 200 

    5.2 头文件简述 201 

    5.3 迭代器类型详述 201 

    5.3.1 输入型迭代器 201 

    5.3.2 输出型迭代器 202 

    5.3.3 前向迭代器 202 

    5.3.4 双向迭代器 202 

    5.3.5 随机存取迭代器 202 

    5.3.6 vector迭代器的递增和递减 203 

    5.4 迭代器配接器 203 

    5.4.1 逆向迭代器 204 

    5.4.2 插入型迭代器 205 

    5.4.3 流迭代器 207 

    5.5 迭代器辅助函数 210 

    5.5.1 advance()迭代器前进函数 210 

    5.5.2 distance()迭代器距离 211 

    5.5.3 iter_swap()交换两个迭代器所指内容 212 

    5.6 本章小结 213 

    第6章 STL的数值计算 

    6.1 复数运算 214 

    6.1.1 最简单的复数运算例题 214 

    6.1.2 复数成员函数 215 

    6.1.3 复数运算符 216 

    6.1.4 复数运算 216 

    6.1.5 复数的超越函数 218 

    6.2 数组(向量)运算 221 

    6.2.1 类valarray 221 

    6.2.2 数组子集类——slice类和类模板slice_array 228 

    6.2.3 类gslice和类模板gslice_array 230 

    6.2.4 类mask_array 232 

    6.2.5 类indirect_array 233 

    6.3 通用数值计算 235 

    6.3.1 求和(accumulate) 235 

    6.3.2 内积(inner_product) 236 

    6.3.3 部分和(partial_sum) 238 

    6.3.4 序列相邻差(adjacent_difference) 239 

    6.4 全局性数学函数 241 

    6.5 本章小结 243 

    第7章 输入/输出流 

    7.1 IOStream简介 244 

    7.1.1 Stream对象 244 

    7.1.2 Stream类别 245 

    7.1.3 Stream操作符 246 

    7.1.4 操控器(Manipulators) 246 

    7.2 IOStream 基本类和标准IOStream对象 247 

    7.2.1 和IOStream类相关的头文件 247 

    7.2.2 标准Stream操作符 247 

    7.2.3 Stream状态 251 

    7.2.4 标准输入和输出函数 254 

    7.3 格式化 259 

    7.3.1 格式标志 259 

    7.3.2 bool类型数据的格式控制 260 

    7.3.3 详解“字段宽度、充填字符和位置调整” 261 

    7.3.4 正记号与大写字符 263 

    7.3.5 数值进制 264 

    7.3.6 浮点数输出 266 

    7.3.7 一般性格式定义 267 

    7.4 StreamBuffer类介绍 268 

    7.4.1 Stream缓冲区 268 

    7.4.2 缓冲区迭代器 269 

    7.4.3 自定义缓冲区 271 

    7.5 基于字符串的流 277 

    7.5.1 streambuf类 277 

    7.5.2 类模板basic_istringstream 279 

    7.5.3 类模板basic_ostringstream 279 

    7.5.4 类模板basic_stringstream 280 

    7.6 基于文件的流 280 

    7.6.1 文件标志及其使用 281 

    7.6.2 随机存取 290 

    7.6.3 4个类模板简介 294 

    7.6.4 C库中的文件存取功能概述 296 

    7.7 本章小结 298 

    第8章 异常处理 

    8.1 异常概念和基本思想 299 

    8.1.1 异常的概念 299 

    8.1.2 异常的分类 300 

    8.1.3 异常的捕捉和处理 302 

    8.1.4 资源管理 304 

    8.1.5 异常和效率 306 

    8.1.6 异常的描述 307 

    8.1.7 未捕捉的异常 309 

    8.2 异常类及几个重要问题 311 

    8.2.1 类exception 311 

    8.2.2 调用abort() 316 

    8.2.3 堆栈解退 318 

    8.2.4 错误代码 319 

    8.2.5 异常的迷失 319 

    8.2.6 异常处理的局限性 323 

    8.3 处理异常详述 324 

    8.3.1 异常处理的实现机制 325 

    8.3.2 异常处理语句的语法 326 

    8.3.3 异常处理不唤醒 326 

    8.3.4 函数声明 326 

    8.3.5 使用异常 326 

    8.4 异常的特殊处理函数 327 

    8.5 本章小结 328 

    第9章 通用工具 

    9.1 通用工具库简介 329 

    9.1.1 相等比较 329 

    9.1.2 小于比较 329 

    9.1.3 复制构造 332 

    9.1.4 默认构造 332 

    9.1.5 配置器要求 332 

    9.1.6 运算符 333 

    9.1.7 对组(pairs) 334 

    9.2 动态内存管理 339 

    9.2.1 默认配置器 339 

    9.2.2 raw storage iterator 341 

    9.2.3 temporary buffers(临时缓冲区) 341 

    9.2.4 特定算法 341 

    9.2.5 C函数库中的内存管理函数 342 

    9.3 堆的内存分配 343 

    9.3.1 new和delete运算符 343 

    9.3.2 分配固定维数的数组 343 

    9.3.3 分配动态内存数组 344 

    9.3.4 处理堆耗尽 345 

    9.4 辅助功能 345 

    9.4.1 数值极限 345 

    9.4.2 最大最小值(较大较小值) 348 

    9.4.3 两值交换 349 

    9.4.4 辅助性比较 351 

    9.4.5 头文件cstdlib和cstddef简介 352 

    9.5 日期和时间 352 

    9.5.1 3个类型 352 

    9.5.2 结构体tm 353 

    9.5.3 相关时间函数 353 

    9.5.4 时间示例 356 

    9.6 模板类auto_ptr 358 

    9.6.1 auto_ptr类构造函数 359 

    9.6.2 类auto_ptr的成员及转换 359 

    9.6.3 使用auto_ptr类 360 

    9.7 本章小结 363 

    第10章 语言支持 

    10.1 类型 364 

    10.2 执行属性 364 

    10.2.1 类模板numeric_limits及其成员 365 

    10.2.2 float_round_style和float_denorm_style 367 

    10.2.3 数值极限的特化 368 

    10.2.4 库函数 368 

    10.2.5 应用举例 369 

    10.3 程序的启动和终止 376 

    10.4 动态内存管理 376 

    10.4.1 内存的分配和释放 377 

    10.4.2 内存分配错误 379 

    10.4.3 应用举例 380 

    10.5 类型标识符 382 

    10.5.1 类type_info 382 

    10.5.2 类bad_cast 383 

    10.5.3 类bad_typeid 384 

    10.5.4 操作符typeid 384 

    10.5.5 操作符dynamic_cast 385 

    10.5.6 应用举例 385 

    10.6 异常处理 387 

    10.6.1 异常类(class exception) 387 

    10.6.2 violating exception-specifications 388 

    10.6.3 abnormal termination 389 

    10.6.4 未捕获异常(uncaught_exception) 390 

    10.6.5 应用举例 390 

    10.7 其他运行支持 392 

    10.7.1 概述 392 

    10.7.2 应用举例 393 

    10.8 本章小结 396 

    第11章 检测库详解 

    11.1 异常类Exception 397 

    11.1.1 类logic_error 397 

    11.1.2 类domain_error 398 

    11.1.3 类invalid_argument 399 

    11.1.4 类length_error 400 

    11.1.5 类out_of_range 401 

    11.1.6 类runtime_error 402 

    11.1.7 类range_error 403 

    11.1.8 类overflow_error 404 

    11.1.9 类underflow_error(下溢出) 405 

    11.2 assertions(断言) 406 

    11.3 错误编码 408 

    11.4 本章小结 409 

    第12章 国际化库详解 

    12.1 国际化问题和国际化元素 410 

    12.2 多种字符编码 411 

    12.2.1 宽字符和多字节文本 411 

    12.2.2 字符特性 412 

    12.2.3 特殊字符国际化 414 

    12.3 类locale 414 

    12.3.1 类locale概述 414 

    12.3.2 类locale的facet 417 

    12.3.3 区域表示和混合区域表示 420 

    12.3.4 流和区域 423 

    12.3.5 刻面的处理 424 

    12.4 标准locale的分类 426 

    12.4.1 类ctype 426 

    12.4.2 数值类的locale类 440 

    12.4.3 刻面numeric punctuation 447 

    12.4.4 类collate 449 

    12.4.5 time类(category) 451 

    12.4.6 C库locale 457 

    12.5 本章小结 458 

    第13章 仿函数 

    13.1 仿函数的概述 459 

    13.1.1 仿函数的概念 459 

    13.1.2 仿函数的作用 460 

    13.2 预定义仿函数 467 

    13.3 辅助用仿函数 468 

    13.3.1 一元组合函数配接器 469 

    13.3.2 二元组合函数配接器 471 

    13.4 关系仿函数 472 

    13.4.1 等于(equal_to()) 472 

    13.4.2 不等于(not_equal_to()) 473 

    13.4.3 小于(less()) 474 

    13.4.4 大于(greater()) 475 

    13.4.5 大于等于(greater_equal)和小于等于(less_equal) 475 

    13.5 逻辑仿函数 476 

    13.5.1 谓词 476 

    13.5.2 逻辑仿函数 477 

    13.6 算术仿函数 482 

    13.6.1 加减乘除运算仿函数(plus) 482 

    13.6.2 “求余”仿函数和“求反”仿函数 484 

    13.7 其他类型的仿函数 485 

    13.7.1 证和映射 486 

    13.7.2 仿函数hash和subtractive_rng 489 

    13.8 适配器 489 

    13.8.1 成员函数适配器 490 

    13.8.2 其他适配器 495 

    13.9 本章小结 504 

    第14章 配置器 

    14.1 使用配置器 505 

    14.2 C++标准程序库的默认配置器(标准配置器) 507 

    14.3 自定义配置器 508 

    14.4 配置类的详细讨论 509 

    14.4.1 型别 509 

    14.4.2 配置类的成员函数 509 

    14.4.3 广义配置器 510 

    14.4.4 动态存储 510 

    14.4.5 C风格的分配 511 

    14.5 未初始化的内存 511 

    14.6 配置器举例 513 

    14.7 本章小结 514 

    参考文献
查看详情
相关图书 / 更多
C++ STL标准程序库开发指南(第2版)
C++之旅(第3版)(英文版)
(美)本贾尼·斯特劳斯特鲁普
C++ STL标准程序库开发指南(第2版)
C++趣味编程及算法入门 全国青少年软件编程等级考试与信息学竞赛通关指南(附600道习题+700个教学视频)
王桂平 等 编著
C++ STL标准程序库开发指南(第2版)
C++那些事
程克非,张兴,崔晓通,秦蔚蓉
C++ STL标准程序库开发指南(第2版)
C++编程这样学
胡芳
C++ STL标准程序库开发指南(第2版)
C++程序设计案例教程(线上线下混合版)
杨卫明;李晓虹
C++ STL标准程序库开发指南(第2版)
C++之旅(第3版)
[美]Bjarne Stroustrup(本贾尼 斯特劳斯特鲁普
C++ STL标准程序库开发指南(第2版)
C++面向对象程序设计(第4版)
谭浩强
C++ STL标准程序库开发指南(第2版)
C++高性能编程
(瑞典)比约恩 安德里斯特(Bj.rn Andrist),(瑞典)维克托 塞尔(Viktor Sehr)
C++ STL标准程序库开发指南(第2版)
C++开发案例精讲
杨国兴 著
C++ STL标准程序库开发指南(第2版)
C++ Concurrency in Action
Anthony Williams
C++ STL标准程序库开发指南(第2版)
C++语言设计教程(计算机专业十四五精品教材)
苏菲、王芬、朱腾 编
C++ STL标准程序库开发指南(第2版)
C++程序设计基础教程
丁卫平 程学云 陈文兰 主编;任红建 沈晓红 文万志 副主编
您可能感兴趣 / 更多
C++ STL标准程序库开发指南(第2版)
大道至简 C++ STL(标准模板库)精解
闫常友 著
C++ STL标准程序库开发指南(第2版)
不要重复发明轮子:C++ STL标准程序库开发指南
闫常友、王敏 著
C++ STL标准程序库开发指南(第2版)
跟我学Visual C++6.0
闫常友 编