总结:
今天终于看完了Modern C++ Design. 从第一天看时候的激动不已, 到如今看完之后, 长出一口气。 这本书的确是想搞懂C++的一本必读之物。 模板,模板特化,模板元编程是贯穿整本书的技术灵魂, 多继承是实现policy的手段, 并利用编译器编程实现了泛化的模式。
第一篇:技术
policy的设计概念激动人心, 确实是一种全新的策略, 类似于多态,strategy模式, 却在编译期完成选择。
模板偏特化, 很清楚的介绍了模板偏特化的方方面面,type_info, 运行时类型信息, 并可用作类型排序,局部类, 类型映射, 很多少见的C++技术。
typelist, 通过typelist这样一个递归定义的实现, 阐述了模板元编程的奥秘, 确实如序中所说, 本章非常精彩。
看过这三章, 可以说是, 在平时的思考中,又有了一个新的空间, 一个新的选择, 虽然一下掌握这些技术不太现实, 不过这种思考方式却很令人兴奋。
第四章的小型对象分配,是一种内存分配技术, 没有搞过, 也不是什么新技术, 感觉一般了。 不过如果需要做一个自己的分配器,这章是个利器。
第二篇:组件
泛化仿函数, 详尽的介绍了仿函数的问题, 并提供了一个手段, 将各种实现了()的东西, 封装为仿函数, 要做泛型编程, 这章尤为重要, 以后还需再多读几次。
smart points 详细解释了智能指针的各种问题, 并加以实现。 智能指针用的少,感觉不大。
singleton, Object Factories, Abstract Factory, Vistor, Multimethods. 运用前述的各种技术, 将这些组件抽丝剥茧, 分为几类策略, 可以轻松定制, 并将很多烦杂的工作泛型自动化, 体现了作者的实力。 看看容易, 理解其中的深度, 需要时间和经验了, 相信没有经历过作者描述的那些问题, 是不能明白设计的意义的。