C++模板元编程PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:(美)DavidAbrahams,AlekseyGurtovoy编著
- 出 版 社:北京:机械工业出版社
- 出版年份:2010
- ISBN:9787111267423
- 页数:277 页
第1章 概述 1
1.1起步走 1
1.2元程序的概念 1
1.3在宿主语言中进行元编程 3
1.4在C++中进行元编程 3
1.4.1数值计算 3
1.4.2类型计算 5
1.5为何进行元编程 6
1.5.1替代方案1:运行期计算 6
1.5.2替代方案2:用户分析 6
1.5.3为何进行C++元编程 7
1.6何时进行元编程 7
1.7为何需要元编程程序库 7
第2章Traits和类型操纵 9
2.1类型关联 9
2.1.1采用一种直接的方式 9
2.1.2采用一种迂回方式 10
2.1.3寻找一个捷径 11
2.2元函数 12
2.3数值元函数 14
2.4在编译期作出选择 15
2.4.1进一步讨论iter_swap 15
2.4.2美中不足 16
2.4.3另一个美中不足 17
2.4.4“美中不足”之外覆器 18
2.5 Boost Type Traits程序库概览 19
2.5.1一般知识 20
2.5.2主类型归类 20
2.5.3次类型归类 21
2.5.4类型属性 22
2.5.5类型之间的关系 23
2.5.6类型转化 23
2.6无参元函数 23
2.7元函数的定义 24
2.8历史 24
2.9细节 25
2.9.1特化 25
2.9.2实例化 26
2.9.3多态 26
2.10练习 27
第3章 深入探索元函数 30
3.1量纲分析 30
3.1.1量纲的表示 31
3.1.2物理量的表示 33
3.1.3实现加法和减法 33
3.1.4实现乘法 34
3.1.5实现除法 37
3.2高阶元函数 39
3.3处理占位符 40
3.3.1 lambda元函数 41
3.3.2 apply元函数 42
3.4 lambda的其他能力 43
3.4.1偏元函数应用 43
3.4.2元函数复合 43
3.5 Lambda的细节 43
3.5.1占位符 43
3.5.2占位符表达式的定义 45
3.5.3 Lambda和非元函数模板 45
3.5.4“懒惰”的重要性 46
3.6细节 46
3.7练习 48
第4章 整型外覆器和操作 49
4.1布尔外覆器和操作 49
4.1.1类型选择 49
4.1.2缓式类型选择 51
4.1.3逻辑运算符 53
4.2整数外覆器和运算 55
4.2.1整型运算符 57
4.2.2_c整型速记法 58
4.3练习 59
第5章 序列与迭代器 61
5.1 Concepts 61
5.2序列和算法 62
5.3迭代器 62
5.4迭代器Concepts 63
5.4.1前向迭代器 63
5.4.2双向迭代器 64
5.4.3随机访问迭代器 65
5.5序列Concepts 66
5.5.1序列遍历Concepts 66
5.5.2可扩展性 68
5.5.3关联式序列 68
5.5.4可扩展的关联式序列 69
5.6序列相等性 71
5.7固有的序列操作 71
5.8序列类 72
5.8.1 list 72
5.8.2 vector 73
5.8.3 deque 74
5.8.4 range_c 74
5.8.5 map 74
5.8.6 set 75
5.8.7 iterator_range 75
5.9整型序列外覆器 75
5.10序列派生 76
5.11编写你自己的序列 77
5.11.1构建tiny序列 77
5.11.2迭代器的表示 78
5.11.3为tiny实现at 79
5.11.4完成tiny_iterator的实现 81
5.11.5 begin和end 82
5.11.6加入扩充性 85
5.12细节 86
5.13练习 87
第6章 算法 90
6.1算法、惯用法、复用和抽象 90
6.2 MPL中的算法 92
6.3插入器 93
6.4基础序列算法 95
6.5查询算法 97
6.6序列构建算法 98
6.7编写你自己的算法 100
6.8细节 101
6.9练习 102
第7章 视图与迭代器适配器 104
7.1一些例子 104
7.1.1对从序列元素计算出来的值进行比较 104
7.1.2联合多个序列 107
7.1.3避免不必要的计算 108
7.1.4选择性的元素处理 109
7.2视图Concept 109
7.3迭代器适配器 110
7.4编写你自己的视图 110
7.5历史 112
7.6练习 112
第8章 诊断 114
8.1调试错误 114
8.1.1实例化回溯 114
8.1.2错误消息格式化怪癖 116
8.2使用工具进行诊断分析 123
8.2.1听取他者的意见 124
8.2.2使用导航助手 124
8.2.3清理场面 124
8.3有目的的诊断消息生成 126
8.3.1静态断言 128
8.3.2 MPL静态断言 129
8.3.3类型打印 136
8.4历史 138
8.5细节 138
8.6练习 139
第9章 跨越编译期和运行期边界 140
9.1 for each 140
9.1.1类型打印 140
9.1.2类型探访 142
9.2实现选择 143
9.2.1 if语句 143
9.2.2类模板特化 144
9.2.3标签分派 144
9.3对象生成器 147
9.4结构选择 149
9.5类复合 153
9.6(成员)函数指针作为模板实参 156
9.7类型擦除 157
9.7.1一个例子 158
9.7.2一般化 159
9.7.3“手工”类型擦除 160
9.7.4自动类型擦除 161
9.7.5保持接口 162
9.8奇特的递归模板模式 164
9.8.1生成函数 164
9.8.2管理重载决议 166
9.9显式管理重载集 168
9.10 sizeof技巧 171
9.11总结 172
9.12练习 172
第10章 领域特定的嵌入式语言 173
10.1一个小型语言 173
10.2路漫漫其修远兮 175
10.2.1 Make工具语言 175
10.2.2巴科斯-诺尔模式 177
10.2.3 YACC 179
10.2.4 DSL摘要 181
10.3 DSL 182
10.4 C++用作宿主语言 184
10.5 Blitz++和表达式模板 186
10.5.1问题 186
10.5.2表达式模板 187
10.5.3更多的Blitz++魔法 190
10.6通用DSEL 191
10.6.1具名参数 191
10.6.2构建匿名函数 193
10.7 Boost Spirit程序库 199
10.7.1闭包 201
10.7.2子规则 202
10.8总结 205
10.9练习 205
第11章 DSEL设计演练 206
11.1有限状态机 206
11.1.1领域抽象 206
11.1.2符号 207
11.2框架设计目标 208
11.3框架接口基础 209
11.4选择一个DSL 210
11.4.1转换表 210
11.4.2组装成一个整体 213
11.5实现 216
11.6分析 221
11.7语言方向 223
11.8练习 223
附录A预处理元编程简介 226
附录B typename和template关键字 247
附录C编译期性能 258
附录D MPL可移植性摘要 274
参考文献 275
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《全国职业院校工业机器人技术专业规划教材 工业机器人现场编程》(中国)项万明 2019
- 《编程超有趣 奇妙Python轻松学 第1辑》HelloCode人工智能国际研究组 2018
- 《我的第一套编程启蒙绘本 看事件 开始了》编程猫教研团队编绘 2019
- 《STEM教育丛书 麦昆机器人和Micro:bit图形化编程》张弛责任编辑;(中国)陈宝杰,沙靓雯 2019
- 《ROS机器人编程与SLAM算法解析指南》陶满礼 2020
- 《我的第一套编程启蒙绘本 123 序列来啦》编程猫教研团队编绘 2019
- 《高等院校计算机任务驱动教改教材 C语言编程思维 第2版》(中国)陈萌,鲍淑娣 2019
- 《我的第一套编程启蒙绘本 咦 什么在 循环》编程猫教研团队编绘 2019
- 《工业机器人离线编程与仿真》张明文,封家诚,王鑫主编 2019
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017
- 《新工业时代 世界级工业家张毓强和他的“新石头记”》秦朔 2019
- 《智能制造高技能人才培养规划丛书 ABB工业机器人虚拟仿真教程》(中国)工控帮教研组 2019
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019