技术教育社区
www.teccses.org

C++11/14高级编程-Boost程序库探秘-(第3版)-经典畅销书升级

封面

作者:罗剑锋著

页数:486

出版社:清华大学出版社

出版日期:2016

ISBN:9787302441755

电子书格式:pdf/epub/txt

内容简介

紧跟c 最11/14标准,详细讲解最特性,深入探讨”准标准库”——boost程序库里的迭代器、函数对象、流处理、模板元编程和预处理元编程等高级组件实用性强,帮助读者深层次地理解掌握现代c 的高级技术和boost的内部实现机制及用法。内容丰富、组织得当、概念清晰、讲解细致,是广大c 程序员和爱好者的第一好书。
 

本书特色

c 的新标准(c 11/14)引入了许多强大易用的新特性新功能,从语言层面深刻地改变了c 的开发范式。
  boost程序库由c 标准委员会部分成员所设立的boost社区开发并维护,它构造精巧、跨平台、开源并且完全免费,被称为“c ‘准’标准库”,已广泛应用在实际软件开发中。boost内容涵盖智能指针、文本处理、并发、模板元编程、预处理元编程等许多领域,其范围之广内涵之深甚至要超过c 11/14标准,极大地增强了c 的功能和表现力。
  本书基于c 最新标准和boost程序库1.60版,深入探讨了其中的许多特性和高级组件,包括迭代器、函数对象、容器、流处理以及c 语言中最复杂最具威力的模板元编程和预处理元编程,具有较强的实用性,可帮助读者深层次地理解掌握现代c 的高级技术和boost的内部实现机制及用法。
  全书内容丰富、结构合理、概念清晰、讲解细致,是广大c 程序员和爱好者的第一好书。

目录

目录第0章  导读 10.1  关于本书 10.2  读者对象 20.3  c 标准 30.4  开发环境 30.5  代码风格 30.6  本书的结构 40.7  如何阅读本书 50.8  本书的源码 6第1章  全新的c 语言 71.1  概述 81.2  左值与右值 91.2.1  定义 91.2.2  右值引用 101.2.3  转移语义 111.2.4  完美转发 121.3  自动类型推导 131.3.1  auto 131.3.2  decltype 151.3.3  decltype(auto) 171.4  面向过程编程 171.4.1  空指针 171.4.2  初始化 181.4.3  新式for循环 191.4.4  新式函数声明 201.5  面向对象编程 211.5.1  default 211.5.2  delete 221.5.3  override 231.5.4  final 241.5.5  成员初始化 251.5.6  委托构造 261.6  泛型编程 271.6.1  类型别名 271.6.2  编译期常量 281.6.3  静态断言 291.6.4  可变参数模板 291.7  函数式编程 311.7.1  lambda表达式311.7.2  捕获外部变量 321.7.3  类型转换 341.7.4  泛型的lambda表达式 351.8  并发编程 351.9  面向安全编程 371.9.1  无异常保证 371.9.2  内联名字空间 371.9.3  强类型枚举 381.9.4  属性 391.10  更多特性 39 1.10.1 语言版本号 39 1.10.2 超长整型 40 1.10.3 原始字符串 40 1.10.4 自定义字面值 41 1.10.5 杂项 431.11  总结 44第2章  模板元编程简介 452.1  概述 452.2  语法元素 462.3  元数据 462.4  元函数 472.5  元函数转发 492.6  易用的工具宏 502.7  应用示例 512.8  总结 52第3章  类型特征萃取 553.1  概述 553.2  元数据类别 563.2.1  基本类别 563.2.2  复合类别 583.3  元数据属性 603.3.1  基本属性 603.3.2  类相关属性 613.3.3  操作符重载属性 623.4  元数据关系 623.5  元数据运算 633.5.1  基本运算 633.5.2  特殊运算 653.6  解析函数元数据 673.7  实现原理 683.7.1  integral_constant 683.7.2  is_integral 693.8  应用示例 703.8.1  conditional 703.8.2  identity_type 713.8.3  declval 723.9  总结 73第4章  实用工具 754.1  compressed_pair 754.1.1  空类 754.1.2  类摘要 774.1.3  构造与赋值 784.1.4  用法 784.1.5  实现原理 794.1.6  功能扩展 804.2  checked_delete 834.2.1  函数的用法 844.2.2  函数对象的用法 854.2.3  带检查的删除 874.2.4  实现原理 894.2.5  使用建议 904.3  addressof 904.3.1  用法 914.3.2  实现原理 924.3.3  使用建议 934.4  base_from_member 934.4.1  类摘要 934.4.2  用法 944.4.3  进一步的用法 964.5  conversion 984.5.1  标准转型操作符 984.5.2  多态对象的转型 994.5.3  polymorphic_downcast 1014.5.4  polymorphic_cast 1024.5.5  对引用转型 1034.6  numeric conversion 1044.6.1  bounds 1044.6.2  numeric_cast 1074.7  pointer 1084.7.1  get_pointer 1084.7.2  pointer_cast 1094.7.3  pointee 1104.7.4  indirect_reference 1114.7.5  pointer_to_other 1114.7.6  compare_pointees 1134.7.7  pointer_traits 1144.8  总结 115第5章  迭代器 1175.1  概述 1175.1.1  迭代器模式 1175.1.2  标准迭代器 1185.1.3  新式迭代器 1195.1.4  标准迭代器工具1205.1.5  迭代器与算法 1225.2  next_prior 1225.2.1  函数声明 1235.2.2  用法 1245.2.3  c 11/14标准1255.3  iterator_traits 1255.3.1  标准迭代器特征类1265.3.2  类摘要 1275.3.3  用法 1275.4  iterator_facade 1285.4.1  迭代器的核心操作1285.4.2  类摘要 1295.4.3  用法 1315.5  iterator_adaptor 1355.5.1  类摘要 1355.5.2  用法 1365.6  迭代器工具 1395.6.1  共享容器迭代器1395.6.2  发生器迭代器 1415.6.3  逆向迭代器 1435.6.4  间接迭代器 1445.6.5  计数迭代器 1455.6.6  函数输入迭代器1485.6.7  函数输出迭代器1515.6.8  过滤迭代器 1535.6.9  转换迭代器 1555.6.10  索引迭代器 1575.6.11  组合迭代器 1595.7  总结 161第6章  区间 1636.1  概述 1636.2  特征元函数 1646.3  操作函数 1656.4  标准算法 1666.4.1  返回原区间的算法1676.4.2  返回定制区间的算法1686.5  迭代器区间类 1706.5.1  类摘要 1706.5.2  用法 1716.6  辅助工具 1736.6.1  sub_range 1736.6.2  counting_range 1746.6.3  istream_range 1746.6.4  irange 1756.6.5  combined_range 1756.6.6  any_range 1766.7  适配器 1786.7.1  适配器列表 1786.7.2  用法 1796.7.3  实现原理 1806.8  其他议题 1816.8.1  自定义区间类型1816.7.2  连接区间 1826.9  总结 182第7章  函数对象 1857.1  hash 1857.1.1  类摘要 1867.1.2  用法 1867.1.3  实现原理 1877.1.4  扩展hash 1887.2  mem_fn 1917.2.1  工作原理 1917.2.2  用法 1927.2.3  其他议题 1937.3  factory 1947.3.1  类摘要 1947.3.2  用法 1957.3.3  value_factory 1977.4  总结 197第8章  指针容器 1998.1  概述 1998.1.1  入门示例 2008.1.2  指针容器的优缺点2038.1.3  可克隆概念 2048.1.4  克隆分配器 2058.1.5  指针容器的分类2068.2  指针容器的共通功能2088.2.1  模板参数 2088.2.2  构造与赋值 2108.2.3  访问元素 2118.2.4  其他功能 2138.3  序列指针容器适配器2148.3.1  配置元函数 2148.3.2  类摘要 2158.3.3  接口解说 2168.3.4  代码示例 2168.4  ptr_vector 2178.4.1  类摘要 2188.4.2  用法 2198.5  空指针处理 2208.5.1  禁用空指针 2208.5.2  使用空指针 2208.5.3  空对象模式 2218.6  关联指针容器的共通功能2238.6.1  类摘要 2238.6.2  接口解说 2248.7  集合指针容器适配器2258.7.1  配置元函数 2258.7.2  ptr_set_adapter 2268.8  ptr_set 2278.8.1  类摘要 2278.8.2  用法 2288.9  ptr_unordered_set 2288.9.1  类摘要 2288.9.2  用法 2298.10  映射指针容器适配器2308.10.1  配置元函数 2308.10.2  ptr_map_adapter 2318.11  ptr_map 2338.11.1  类摘要 2338.11.2  用法 2348.12  ptr_unordered_map 2348.12.1  类摘要 2358.12.2  用法 2358.13  使用assign库 2368.13.1  向容器添加元素2368.13.2  初始化容器元素2378.14  使用算法 2388.14.1  标准算法 2388.14.2  序列指针容器的算法2428.14.3  关联指针容器的算法2448.15  其他议题 2468.15.1  异常 2478.15.2  间接函数对象 2478.15.3  插入迭代器 2488.15.4  使用视图分配器2488.15.5  可克隆性的再讨论2498.16  总结 250第9章  侵入式容器 2519.1  概述 2519.1.1  手工实现链表 2529.1.2  intrusive库介绍 2539.2  入门示例 2549.2.1  使用基类挂钩 2549.2.2  使用成员挂钩 2559.3  基本概念 2579.3.1  节点 2579.3.2  节点特征 2589.3.3  节点算法 2589.3.4  值特征 2609.3.5  挂钩 2609.3.6  选项 2629.3.7  处置器 2639.3.8  克隆 2649.4  链表 2649.4.1  节点和算法 2659.4.2  基类挂钩 2669.4.3  成员挂钩 2679.4.4  类摘要 2679.4.5  基本用法 2699.4.6  特有用法 2719.5  有序集合 2759.5.1  节点和算法 2759.5.2  基类挂钩 2769.5.3  成员挂钩 2779.5.4  set类摘要 2779.5.5  基本用法 2799.5.6  特有用法 2809.6  无序集合 2829.6.1  节点和算法 2829.6.2  基类挂钩 2839.6.3  成员挂钩 2849.6.4  类摘要 2849.6.5  基本用法 2869.6.6  unordered_set的特有用法 2889.7  其他议题 2909.7.1  链接模式 2909.7.2  同时使用多个挂钩2919.7.3  万能挂钩 2939.8  总结 293第10章  多索引容器 29510.1  概述 29510.2  入门示例 29610.2.1  简单的例子 29610.2.2  复杂的例子 29710.2.3  更复杂的例子29910.3  基本概念 30210.3.1  索引 30210.3.2  索引说明 30310.3.3  键提取器 30410.3.4  索引说明列表30410.3.5  索引标签 30510.3.6  多索引容器 30510.4  键提取器 30610.4.1  定义 30610.4.2  identity 30710.4.3  member 30810.4.4  const_mem_fun 31010.4.5  mem_fun 31110.4.6  global_fun 31210.4.7  自定义键提取器31310.5  序列索引 31310.5.1  索引说明 31310.5.2  类摘要 31410.5.3  用法 31510.6  随机访问索引 31710.6.1  索引说明 31710.6.2  类摘要 31710.6.3  用法 31810.7  有序索引 32010.7.1  索引说明 32010.7.2  类摘要 32010.7.3  基本用法 32210.7.4  高级用法 32310.8  散列索引 32610.8.1  索引说明 32610.8.2  类摘要 32610.8.3  用法 32710.9  修改元素 32910.9.1  替换元素 32910.9.2  修改元素 33010.9.3  修改键 33210.10  多索引容器 33310.10.1  类摘要 33310.10.2  用法 33410.11  组合索引键 33710.11.1  类摘要 33710.11.2  用法 33810.11.3  辅助工具 33910.12  总结 341第11章  流处理 34311.1  概述 34311.1.1  标准库的流处理34311.1.2  boost的流处理34511.2  入门示例 34611.2.1  示例1 34611.2.2  示例2 34711.3  设备的特征 34911.3.1  设备的字符类型34911.3.2  设备的模式 34911.3.3  设备的分类 35011.4  设备 35111.4.1  概述 35111.4.2  数组设备 35211.4.3  标准容器设备35411.4.4  文件设备 35511.4.5  空设备 35711.5  过滤器 35811.5.1  概述 35811.5.2  设备链和管道35911.5.3  计数过滤器 36111.5.4  换行过滤器 36211.5.5  正则表达式过滤器(ⅰ) 36411.5.6  正则表达式过滤器(ⅱ) 36611.5.7  压缩过滤器 36811.6  流 36911.6.1  基本流 37011.6.2  过滤流 37111.7  流处理函数 37311.8  定制设备 37411.8.1  定制源设备 37411.8.2  定制接收设备37711.9  定制过滤器 37711.9.1  过滤器的实现原理37811.9.2  aggregate_filter 37911.9.3  basic_line_filter 38011.9.4  手工打造过滤器38111.10  组合设备 38511.10.1  combine 38511.10.2  compose 38611.10.3  invert 38711.10.4  restrict 38911.10.5  tee 39011.11  其他议题 39111.11.1  对象的生存周期39111.11.2  与迭代器的比较39111.12  总结 392第12章  泛型编程 39512.1  enable_if 39512.1.1  类摘要 39612.1.2  应用于模板函数39712.1.3  应用于模板类39812.1.4  对比c 11标准 39912.2  call_traits 39912.2.1  类摘要 39912.2.2  用法 40012.2.3  实现原理 40212.3  concept_check 40312.3.1  概述 40412.3.2  基本概念检查40512.3.3  函数对象概念检查40512.3.4  标准迭代器概念检查40612.3.5  新式迭代器概念检查40712.3.6  容器概念检查40912.3.7  区间概念检查41112.3.8  在函数声明中的概念检查 41112.3.9  概念原型类 41312.4  总结 414第13章  模板元编程 41513.1  概述 41513.2  整数类型 41613.2.1  简介 41613.2.2  整数类型 41813.2.3  bool类型41913.2.4  基本运算 41913.3  流程控制 42113.3.1  if_和if_c42113.3.2  eval_if和eval_if_c42213.4  容器 42313.4.1  简介 42413.4.2  vector 42513.4.3  string 42613.4.4  map 42713.4.5  相关元函数 42813.5  迭代器 42913.5.1  简介 42913.5.2  相关元函数 43013.6  算法 43113.6.1  插入器 43113.6.2  查询算法 43213.6.3  变换算法 43313.6.4  运行时算法 43413.7  高级用法 43513.7.1  高阶元数据 43613.7.2  占位符 43713.7.3  bind表达式43713.7.4  lambda表达式43813.7.5  算法的高级应用43913.8  断言 44113.8.1  基本断言 44213.8.2  否定断言 44213.8.3  关系断言 44313.8.4  定制消息的断言44313.9  实例研究 44413.9.1  泛型编程版本44413.9.2  元编程第1版 44613.9.3  元编程第2版 44913.10  总结 450第14章  预处理元编程 45314.1  概述 45314.1.1  元数据 45414.1.2  基本语法 45414.1.3  特殊符号 45614.1.4  特殊操作符 45614.2  整数运算 45714.3  常用元函数 45814.3.1  assert 45814.3.2  if 45914.3.3  enum 45914.3.4  repeat 46014.4  高级数据结构 46114.5  总结 462第15章  现代c 开发浅谈 46315.1  基本原则 46315.2  内存管理 46715.3  容器、迭代器和算法46815.4  其他 46915.5  结束语 471附录a  推荐书目 473附录b  boost程序库组件索引 475附录c  boost程序库安装简介 485????????xx  目录xix目录c 11/14高级编程——boost程序库探秘(第3版)c 11/14高级编程——boost程序库探秘(第3版)c 11/14高级编程——boost程序库探秘(第3版)

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《C++11/14高级编程-Boost程序库探秘-(第3版)-经典畅销书升级》
Article link:https://www.teccses.org/657780.html