专注于技术 心无旁骛 - justforfan528

Linux技术| 网络编程coding | 网络安全Cyber Security | study |

 

导航

设计模式之Adapter模式(待整理)

Adapter模式又名Wrapper模式,将一个类的接口转换成客户希望的另外一个接口。该模式可以使得原本由于接口不兼容而不能在一起工作的那些类可以一起工作。

让我们看看实现一些设计模式的代码:(该例子转载于http://blog.csdn.net/dylgsy/archive/2006/06/29/852172.aspx ,目前还在寻找更好的例子)

Adapter模式:

 

#include <stdio.h>


// 已存在的类,将要被适配者
class XCircle
{
public:
 XCircle()
 
{
  printf(
"我是XCircle\n");
 }

 
void DisplayIT()
 
{
  printf(
"显示一个圆\n");
 }

}
;

class CShape
{
public:
 
virtual void Display() = 0;
}
;


// 因为XCircle已经实现了显示圆的操作,所以我们不用重新实现了,拿来用一下
class CCircle : public CShape
{
public:
 CCircle()
 
{
  printf(
"我是CCircle\n");
 }

 
virtual void Display()
 
{
  printf(
"CCircle借用一下XCircle的显示操作:\n");
  _xc.DisplayIT();
 }


private:
 XCircle _xc;
}
;


int main()
{
 CCircle circle;
 circle.Display();

 
return 0;
}
 

posted on 2007-10-11 08:44  游荡者  阅读(1116)  评论(4编辑  收藏  举报