您的位置:首页 > 其它

适配器模式(ADAPTER)案例分析

2008-08-02 13:25 239 查看
[案例]

朋友从美国给我带回一个微波炉,但因为美国的生活用电电压是110V,而中国的电压是220V,所以我不能使用,幸好朋友有先见之明,给我带回一个变压器,能把220V电压转换成110V电压,我才可以放心使用了。

[意图]

把一个类的借口转换成客户端所期待的另一种接口,从而使原接口不匹配而无法在一起工作的两个类能在一起工作。本程序通过适配,使c220类能在c110类中使用。



程序代码:

#include <iostream.h>

class c220v
{
public:
void DianYa220v()
{
cout<<"220v电压!"<<endl;
}
};
class c110v
{
public:
virtual void DianYa110v()=0;
};
class adaper:public c110v
{
private:
c220v *c220obj;
public:
adaper(c220v* obj)
{
c220obj=obj;
}
void DianYa110v()
{
c220obj->DianYa220v();
cout<<"经变压器转换成"<<endl;
cout<<"110v电压"<<endl;
}
};
int main()
{
c220v *c220vobj=new c220v;
adaper adobj(c220vobj);
adobj.DianYa110v();
return 1;
}

运行结果:

220v电压!

经变压器转换成

110v电压

Press any key to continue
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: