现在的位置: 首页 > 综合 > 正文

设计模式12:类适配器【结构型】

2018年10月03日 ⁄ 综合 ⁄ 共 612字 ⁄ 字号 评论关闭
#include <iostream>
using namespace std;

//
class CDeque
{
public:
	void push_front() { cout<<"CDeque push_front."<<endl; }
	void push_back()  { cout<<"CDeque push_back."<<endl; }
	void pop_front()  { cout<<"CDeque pop_front."<<endl; }
	void pop_back()   { cout<<"CDeque pop_back."<<endl; }
};

struct ISequence
{
public:
	virtual void push() = 0;
	virtual void pop() = 0;
};

class CStack : public ISequence,CDeque
{
public:
	virtual void push() { push_back(); }
	virtual void pop() { pop_back(); }
};

class CQueue : public ISequence,CDeque
{
public:
	virtual void push() { push_back(); }
	virtual void pop() { pop_front(); }
};

//
void main()
{
	CStack stack;
	stack.push();
	stack.pop();

	CQueue queue;
	queue.push();
	queue.pop();
}

抱歉!评论已关闭.