7. Effective C++ 3rd Edition 中文版 第七章 (Item 41-48) (12)
fatalerror99
看不惯的事情越来越多了,想说点啥的冲动却越来越少了。
展开
-
[翻译] Effective C++, 3rd Edition, Chapter 7. Templates(模板)和 Generic Programming(泛型编程)
Chapter 7. Templates(模板)和 Generic Programming(泛型编程)作者:Scott Meyers译者:fatalerror99 (iTePubs Nirvana)发布:http://blog.csdn.net/fatalerror99/C++ templates(C++ 模板)的最初动机是直截了当的:使得创建类似 vector,list 和 m翻译 2005-11-28 11:59:00 · 2381 阅读 · 1 评论 -
[翻译] Effective C++, 3rd Edition, Item 47: 为类型信息使用 traits classes(特征类)(上)
Item 47: 为类型信息使用 traits classes(特征类)作者:Scott Meyers译者:fatalerror99 (iTePubs Nirvana)发布:http://blog.csdn.net/fatalerror99/STL 主要是由 containers(容器),iterators(迭代器)和 algorithms(算法)的 templates(模板)构翻译 2006-02-07 03:27:00 · 6119 阅读 · 1 评论 -
[翻译] Effective C++, 3rd Edition, Item 47: 为类型信息使用 traits classes(特征类)(下)
(点击此处,接上篇)iterator_traits 通过两部分实现这一点。首先,它强制要求任何 user-defined iterator(用户定义迭代器)类型必须包含一个名为 iterator_category 的嵌套 typedef 用以识别适合的 tag struct(标签结构体)。例如,deque 的 iterators(迭代器)是随机访问的,所以一个 deque iterators翻译 2006-02-08 01:44:00 · 4779 阅读 · 5 评论 -
[翻译] Effective C++, 3rd Edition, Item 46: 需要 type conversions(类型转换)时在 templates(模板)内定义 non-member functions(非成员函数)
Item 46: 需要 type conversions(类型转换)时在 templates(模板)内定义 non-member functions(非成员函数)作者:Scott Meyers译者:fatalerror99 (iTePubs Nirvana)发布:http://blog.csdn.net/fatalerror99/Item 24 阐述了为什么只有 non-翻译 2006-01-26 07:27:00 · 3269 阅读 · 3 评论 -
[翻译] Effective C++, 3rd Edition, Item 45: 用 member function templates(成员函数模板) 接受 "all compatible types"(“所有兼容类型”)
Item 45: 用 member function templates(成员函数模板) 接受 "all compatible types"(“所有兼容类型”)作者:Scott Meyers译者:fatalerror99 (iTePubs Nirvana)发布:http://blog.csdn.net/fatalerror99/smart pointers(智能指针)是行翻译 2005-12-29 22:40:00 · 2942 阅读 · 0 评论 -
[翻译] Effective C++, 3rd Edition, Item 44: 从 templates(模板)中分离出 parameter-independent(参数无关)的代码(下)
(点击此处,接上篇)一个可替换方案是让 SquareMatrixBase 存储一个指向矩阵的值的内存区域的指针。而且一旦它存储了这个指针,它同样也可以存储矩阵大小。最后得到的设计大致就像这样:templateclass SquareMatrixBase {protected: SquareMatrixBase(std::size_t n, T *pMem) // store翻译 2005-12-25 20:00:00 · 2928 阅读 · 0 评论 -
[翻译] Effective C++, 3rd Edition, Item 44: 从 templates(模板)中分离出 parameter-independent(参数无关)的代码(上)
Item 44: 从 templates(模板)中分离出 parameter-independent(参数无关)的代码作者:Scott Meyers译者:fatalerror99 (iTePubs Nirvana)发布:http://blog.csdn.net/fatalerror99/templates(模板)是节省时间和避免代码重复的极好方法。不必再输入 20 个相似的 cl翻译 2005-12-22 00:38:00 · 5948 阅读 · 6 评论 -
[翻译] Effective C++, 3rd Edition, Item 43: 了解如何访问 templatized base classes(模板化基类)中的名字(上)
Item 43: 了解如何访问 templatized base classes(模板化基类)中的名字作者:Scott Meyers译者:fatalerror99 (iTePubs Nirvana)发布:http://blog.csdn.net/fatalerror99/假设我们要写一个应用程序,它可以把消息传送到几个不同的公司去。消息既可以以加密方式也可以以明文(不加密翻译 2005-12-07 19:57:00 · 4449 阅读 · 0 评论 -
[翻译] Effective C++, 3rd Edition, Item 43: 了解如何访问 templatized base classes(模板化基类)中的名字(下)
(点击此处,接上篇)已知 MsgSender 针对 CompanyZ 被特化,再次考虑 derived class(派生类)LoggingMsgSender:templateclass LoggingMsgSender: public MsgSender {public: ... void sendClearMsg(const MsgInfo& info) { write翻译 2005-12-08 20:26:00 · 3010 阅读 · 4 评论 -
[翻译] Effective C++, 3rd Edition, Item 41: 理解 implicit interfaces(隐式接口)和 compile-time polymorphism(编译期多态)
Item 41: 理解 implicit interfaces(隐式接口)和 compile-time polymorphism(编译期多态)作者:Scott Meyers译者:fatalerror99 (iTePubs Nirvana)发布:http://blog.csdn.net/fatalerror99/Object-Oriented Programming(面向对象编程)翻译 2005-12-01 01:10:00 · 4019 阅读 · 4 评论 -
[翻译] Effective C++, 3rd Edition, Item 42: 理解 typename 的两个含义
Item 42: 理解 typename 的两个含义作者:Scott Meyers译者:fatalerror99 (iTePubs Nirvana)发布:http://blog.csdn.net/fatalerror99/问题:在下面的 template declarations(模板声明)中 class 和 typename 有什么不同?templateclass T>翻译 2005-12-04 23:18:00 · 7677 阅读 · 10 评论 -
[翻译] Effective C++, 3rd Edition, Item 48: 感受 template metaprogramming(模板元编程)
Item 48: 感受 template metaprogramming(模板元编程)作者:Scott Meyers译者:fatalerror99 (iTePubs Nirvana)发布:http://blog.csdn.net/fatalerror99/template metaprogramming (TMP)(模板元编程)是写 template-based(基于模板)的运行翻译 2006-02-13 00:26:00 · 7552 阅读 · 4 评论