GP
numenshane1
啥都懂点,啥都不精!
殊途同归
展开
-
泛型vs模板
template class BufPtr { }; int main() { int size_val = 1024; const int c_size_val = 1024; BufPtr bp0; // 编译不过 } 是因为函数main在栈位置是不固定的。转载 2010-03-20 12:16:00 · 2057 阅读 · 0 评论 -
template_note
模板定义 非类型参数的模板实参 模板特化 模板偏特化 模板实例化 编译期计算模板实参:template class Buffer{...};//错误的实例化Buffer bp;sizeof()表达式的结果是一个常量表达式,可作为非类型模板参数的实参。eg:templateBuf{...};templateclass BufPtr{原创 2010-04-29 10:38:00 · 437 阅读 · 0 评论 -
STL concept check
评论:定义函数指针不会触发模板实例化,指针赋值使编译器会静态检查模板函数的内部定义。 这时相当于在block里定义了一个函数指针__x,而__x=__x将触发模板的实例化,这时编译器开始对_InputIterator_concept_specification::_InputIterator_requirement_violation中的所有的static assertion进行检查,但又不会调用这些函数,这样只会在编译期间会产生开销。转载 2010-07-24 11:02:00 · 829 阅读 · 0 评论 -
STL 六大组件 功能与运用
1、容器(Containers):各种数据结构,如Vector,List,Deque,Set,Map,用来存放数据,STL容器是一种Class Template,就体积而言,这一部分很像冰山载海面的比率。2、算法(Algorithms):各种常用算法如Sort,Search,Copy,Erase,从实现的角度来看,STL算法是一种Function Templates。3、迭代器(Iterators):扮演容器与算法之间的胶合剂,是所谓的“泛型指针”,共有五种类型,以及其它衍生变化,从实现的角度来看,迭代器是转载 2010-08-08 09:47:00 · 1417 阅读 · 0 评论 -
loki note
TyepTraits.h namespace Loki { template struct IsCustomUnsignedInt //IsCustomSignedInt IsCustomFloat { enum {value=0}; }; namespace Private { typedef LOKI_TYPELIST_4(unsigned char, unsigned short int, unsigned int, unsigned long int) StdUnsigned原创 2010-11-29 13:22:00 · 557 阅读 · 0 评论 -
A Static C++ Object-Oriented Programming (SCOOP) Paradigm Mixing Benefits of Traditional OOP and GP
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.2.8789http://wenku.baidu.com/view/b7dd8f7931b765ce050814c9.html翻译 2010-12-08 17:14:00 · 531 阅读 · 0 评论 -
boost剖析 聚结范型牛人们的思想精髓
http://mindhacks.cn/feed/http://blog.csdn.net/pongba/category/37521.aspx转载 2010-12-10 11:34:00 · 691 阅读 · 0 评论 -
comment:Yet Another Generalized Functors Implementation in C++
source : http://www.codeproject.com/KB/cpp/genfunctors.aspxsource code here:http://www.google.cn/codesearch/p?hl=zh-CN#Sm49eXhuoDE/trunk/delta3d/inc/dtUtil/functor.h&q=struct%20FunImplBase&d=4personal comment:functor template class hold returnType , params原创 2010-12-16 11:29:00 · 590 阅读 · 0 评论 -
CM framework design and implementation
variant designed for encapsulating data which transfered between binary boundary.//variant.h #include "basic_type_def.h" //define UINT8 INT8... #include "interface_base.h" enum VariantType_t { VT_NULL, VT_BOOL, VT_UINT8, VT_INT8, //16,32,64 VT_F原创 2010-12-15 18:10:00 · 697 阅读 · 0 评论