
| 本书清晰地揭示了现代c++最具威力的使用手法,将实际的工具和技术交付普通程序员的手中。 元编程是产生或操纵程序码的程序。自从泛型编程被引入c++中以来,程序员们已经发现用于当程序被编译时对其进行操纵的无数“tricks template”,这些tricks有效地消除了横亘在程序和元编程之间的藩篱。尽管c++专家们对这种能力的兴奋已经波及整个c++社区,然而它们的实际应用对于大多数程序员来说仍然是遥不可及。本书解释了何谓元编程以及如何最佳化地使用 它,为你在自己的工作中有效地使用模板元编程提供了必备的基础。 本书瞄准于任何熟悉标准模板库(standard template library,stl)惯用法的程序员。c++高级用户会获得对既有工作新的洞察以及对元编程领域新的认知。那些已经学习了一些高级模板技术的中级程序员将会明白这些tricks是从哪儿适合大画面的。并将获得有秩序地使用它们所需的概念基础。对于那些已经嗅到元编程味道但对其仍然感到神秘的程序员而言,最终将获得对元编程如何工作、何时工作以及为何工作的清晰的理解。无论如何,所有读者都将获得一个可以自由支配的、威力空前的新工具:boost metadroaramming library。 |
| David Abrahams,Boost C++程序库开发组的一名发起成员和主持人。自从1996年起,Dave就是一名ANSI/ISO C++委员会成员,他因对C++标准程序库异常处理的理论、规格和实现的贡献而名声鹊起。他的公司Boost Consulting提供了与Boost有关的支持和开发服务,以及软件构建艺术的职业培训。 |
| 译者序 序言 前言 致谢 第1章 概述 1.1 起步走 1.2 元程序的概念 1.3 在宿主语言中进行元编程 1.4 在c++中进行元编程 1.5 为何进行元编程 1.6 何时进行元编程 1.7 为何需要元编程程序库 第2章 traits和类型操纵 2.1 类型关联 2.2 元函数 2.3 数值元函数 2.4 在编译期作出选择 2.5 boost type traits程序库概览 2.6 无参元函数 2.7 元函数的定义 2.8 历史 2.9 细节 2.10 练习 第3章 深入探索元函数 3.1 量纲分析 3.2 高阶元函数 3.3 处理占位符 3.4 lambda的其他能力 3.5 lambda的细节 3.6 细节 3.7 练习 第4章 整型外覆器和操作 4.1 布尔外覆器和操作 4.2 整数外覆器和运算 4.3 练习 第5章 序列与迭代器 5.1 concepts 5.2 序列和算法 5.3 迭代器 5.4 迭代器concepts 5.5 序列concepts 5.6 序列相等性 5.7 固有的序列操作 5.8 序列类 5.9 整型序列外覆器 5.10 序列派生 5.11 编写你自己的序列 5.12 细节 5.13 练习 第6章 算法 6.1 算法、惯用法、复用和抽象 6.2 mpl中的算法 6.3 插入器 6.4 基础序列算法 6.5 查询算法 6.6 序列构建算法 6.7 编写你自己的算法 6.8 细节 6.9 练习 第7章 视图与迭代器适配器 7.1 一些例子 7.2 视图concept 7.3 迭代器适配器 7.4 编写你自己的视图 7.5 历史 7.6 练习 第8章 诊断 第9章 跨越编译期和运行期边界 第10章 领域特定的嵌入式语言 第11章 dsel设计演练 附录a 预处理元编程简介 附录b typename和template关键字 附录c 编译期性能 附录d mpl可移植性摘要 参考文献 |
商品评论(0条)