博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

2008年10月24日

摘要: 网络上介绍在C++编译器上实现“委托”的技术文章最著名的就是Don Clugston撰写的《成员函数指针与高性能的C++委托》一文了,它首先解释了成员函数指针在一些常用的编译器中是怎样实现的,然后展示了在多种C++编译器上实现优化而可靠的“委托”。但它过于深入、牵涉到汇编及各种编译期特性、而且其提交的著名代码FastDelegate只实现了单播委托。故国内众多高手也实现一些了稍微简单易懂的C++委托类,流传最广的估计就是jfwan的《一个C#的delegate在C++中的实现》和cpunion的《实现一个高效C++多分派委托类》了。其中jfwan实现的代码精简短小、接口完整,合理的运用宏定义实现了支持不同参数的模板委托类。而cpunion的实现利用模板特化对引用类型返回值提供了支持,而且支持绑定仿函数和=、+=、-=等操作符。想到自己02年刚入行时,为了实现C++回调通知而焦头烂额的样子。看来有必要在众位高手的基础上重构一个新的C++委托类,以加深对C++的理解。 阅读全文

posted @ 2008-10-24 22:55 fReeShoOT 阅读(2217) 评论(2) 推荐(0)

2008年10月16日

摘要: 本文对C++模板,以及C++模板所支持的泛型编程作了一个概览。着重介绍了泛型编程诞生的原因,泛型编程的过程和意义,与其它抽象手段的比较。并对C++中的模板元编程做了一些介绍。最后介绍了C++模板在C++09中的增强。 阅读全文

posted @ 2008-10-16 23:25 fReeShoOT 阅读(257) 评论(0) 推荐(0)

摘要: 为什么用C++呢? 在你皱着眉头离开之前,试着回答这个简单的问题。效率,是么?人人都知道这个。但情况是,当一个人开始讨论编程语言或与其相关的话题时,他必须要非常明确而有针对性。为什么呢?我来问你另一个问题:如果效率是人们使用C++的唯一理由,那么为啥不直接用C呢?C被认为比C++效率更高(嗯嗯,我知道C没有比C++的效率高多少,所以这里别误解我的意思,因为即使它们二者效率相同,刚才的问题依然存在)。 阅读全文

posted @ 2008-10-16 22:46 fReeShoOT 阅读(251) 评论(0) 推荐(0)