六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 38|回复: 0

Modern C++ Design, Spring Framework和Ruby的Mixin....

[复制链接]

升级  34.67%

28

主题

28

主题

28

主题

秀才

Rank: 2

积分
102
 楼主| 发表于 2013-1-27 06:03:03 | 显示全部楼层 |阅读模式
 原文出处及讨论:http://www.blogjava.net/calvin/archive/2005/11/01/17678.html
  作者:江南白衣 

《Modern C++ Design》里的Policy-Base Class是Cpper得意的一样事情;
  Spring 式IoC container 的依赖注入是Javaer得意的一样事情;
  Ruby的Mixin特性是Rubyer得意的一样事情。

  有趣的是,各自得意的事情,指向的是同一个问题:多重行为的组合。

   1 .Policy-Base是混合使用模板与C++的多重继承达成的:
      最终类多重继承模版类,由模版传入实际的行为类(Policy Class)。

<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee;">template <class CheckingPolicy>
class SmartPtr : public CheckingPolicy
{...};

typedef SmartPtr
<NoChecking> noCheckPtr;
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表