Adapter (C++实现 )
来源:互联网 发布:战网数据查询 编辑:程序博客网 时间:2024/06/05 04:22
// Adapter.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <iostream>
using namespace std;
class Target
{
public :
Target() {}
virtual ~Target(){}
virtual void Request()=0;
};
class Adaptee
{
public:
Adaptee(){}
virtual ~Adaptee(){}
void SpecialRequset()
{
cout<<"SpecialRequset of Adaptee"<<endl;
}
};
//////////////////////////////////////////////////////////////
class Adapter_class:private Adaptee,public Target
{
public:
Adapter_class()
{
cout<<"Construction of Adapter_class"<<endl;
}
virtual ~Adapter_class()
{
cout<<"Destruction of Adapter_class"<<endl;
}
void Request()
{
SpecialRequset();
}
};
//////////////////////////////////////////////////////////////
class Adpater_object:public Target
{
public:
Adpater_object(Adaptee* m_p):m_pAdaptee(m_p)
{
cout<<"Construction of Adapter_objetc"<<endl;
}
virtual ~Adpater_object()
{
delete m_pAdaptee;
m_pAdaptee=NULL;
cout<<"Destruction of Adapter_class"<<endl;
}
void Request()
{
m_pAdaptee->SpecialRequset();
}
private:
Adaptee* m_pAdaptee;
};
int _tmain(int argc, _TCHAR* argv[])
{ //Client1
Target *t=new Adapter_class();
t->Request();
delete t;
//Client2
Adaptee *p=new Adaptee();
Target *t1=new Adpater_object(p);
t1->Request();
return 0;
}
- Adapter模式AS2实现
- C++实现Adapter模式
- Adapter (C++实现 )
- Adapter模式C++实现
- ListView(Adapter实现)
- Pattern: Adapter 简单实现
- Pattern: Adapter 中级实现
- python实现Adapter模式
- 扩展BaseAdapter实现Adapter
- Adapter实现多种布局
- adapter实现多布局
- RecyclerView.Adapter的实现
- Design Pattern - Adapter(C#)
- adapter的两种实现
- C++实现Structural - Adapter模式
- 继承BaseAdapter实现自定义Adapter
- 对象的adapter模式实现
- Adapter接口及实现类
- 一些经验(五)
- sicily 1898 && 2608 Tree
- c3dl教程第一课:课后练习,分析
- libcurl 多线程使用注意事项
- bcb的ShowModal
- Adapter (C++实现 )
- 以悲奇的形式结束 goole code jam 之旅~~~~
- Lucene3 分词
- 基础加强之代理的原理
- 14个简单饮食习惯让你受益终生
- 书暖童年智启明天 志愿者捐赠图书活动启动
- 注册表文件知识
- asp.net 判断用户是否登录
- 让小车再飞一会儿 ——记校赛惨痛失败之旅