趴趴熊的专栏

Linux Kernel/Filesystem 保持健康年轻的心态,I Love this game!

适配器[Adapter]

        Adapter简单的比喻就是把二相插座装换成三相插座,也就是接口转换器。意图使原来不

兼容的接口可以和其他接口配合使用。

类图:

   

 

自己写的简单代码实例:

 

       程序输出:from shape draw
                    from TestView Request

       显然Adapter作为新的接口,具有了TestView的属性和方法。保留了接口的

一致性。在STL中也有函数适配器这个概念:有的算法需要一个一元函数作参数,

可以用一个适配器把一个二元函数和一个数值,绑在一起作为一个一元函数传给算法。
例如:
       find_if(coll.begin(), coll.end(), bind2nd(greater<int>(), 42));
       这句话就是找coll中第一个大于42的元素。
       greater<int>(),其实就是">"号,是一个2元函数
       bind2nd的两个参数,要求一个是2元函数,一个是数值,结果是一个1元函数。
       bind2nd就是个函数适配器。

       好了,关于适配器模式,欢迎拍砖~~

     

 

 

阅读更多
文章标签: 算法 class
个人分类: 设计模式
想对作者说点什么? 我来说一句

J2EE Connector Architecture, JCA

2012年04月11日 126KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭