类的adapter模式

现在说下adapter模式,adapter模式主要有两种,一种是类的adapter模式,这种adapter模式主要是使用类继承的方式来实现的,即主要有三个类,一个是实现功能的adaptee

类,这个就好像是我们的第三方软件库中已经实现好的,第二个是target类,这个是我们软件为该功能保留的接口,第三个当然就是adapter类了。图示如下:


这个设计模式一直不是太走心,或者说不太容易让人理解,所以在这儿写下代码吧,权当练习了


	#include
  
  
   
   
using namespace std;
class adaptee
{
public:
   adaptee()
    {
        ;
     }
   ~adaptee()
    {
        ;
    }
 void SpecificRequest()
    {
       /*真正实现功能的函数所在*/
        cout<<"adaptee::SpecificRequest";    
    }
};
class target
{
 public:
    target()
    {
       ;
     }  
    ~target()
     {
        ;//这个函数主要是要想法设法的调用adaptee的SpecificRequest函数
     }
  void Request()
     {
        /*自己系统中表示的要实现该功能的函数*/
        cout<<"target::Request\n";
      }
};
class adapter:
   
   public target,private adaptee
{
    ~adapter()
    { 
      ;
    }
    adapter()
    {
         ;
     }
    void Request()
    {
          //注意该函数覆盖了父类中的Request
          this->SpecificRequest();
    }
};
int main()
{
      target* ptar=new adapter();
      ptar->Request();//实际上调用的还是adaptee的SpecificRequest
      delete ptar;
      return 1;
}

  
  

又熟悉了一遍哈,呵呵不错,关于对象的adapter模式,明天再加吧,有些困了...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

世纪殇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值