Console Application, based on Microsoft Visual Studio 2005 .NET, written in C++ language.
#include "stdafx.h"
#include <iostream>
using namespace std;
class Adaptee
{
public:
void SpecificRequest()
{
cout << "Called SpedificRequest()" << endl;
}
};
class Target
{
public:
virtual void Request()
{
cout << "Called Target Request()" << endl;
}
};
class Adapter : public Target
{
public:
virtual void Request()
{
_adaptee->SpecificRequest();
}
private:
Adaptee *_adaptee;
};
int _tmain(int argc, _TCHAR* argv[])
{
Target *tar = new Adapter();
tar->Request();
return 0;
}

本文展示了一个使用C++实现的适配器模式例子。通过定义一个Adapter类继承自Target类,并将Adaptee类的功能转换为Target接口所期望的形式,从而实现了不同接口之间的兼容。


被折叠的 条评论
为什么被折叠?



