C++与设计模式(3)——适配器模式

来源:互联网 发布:三分屏录制软件 编辑:程序博客网 时间:2024/05/29 03:46

适配器模式

适配器模式指通过把接口转换成用户需要的接口,来让原本由于接口不兼容而不能一起工作的那些类可以一起工作。
举个简单的例子,在STL中实际上只提供了双端队列(deque)的数据结构,而栈(stack)和队列(queue)都是通过适配器模式来转换双端队列(deque)的接口来实现的。

class Deque{public:    void push_back(int x){}    void push_front(int x){}    void pop_back(){}    void pop_front(){}};class Stack{public:    void push(int x){deque.push_back(x);}    void pop(){deque.pop_back();}private:    Deque deque;};class Queue{public:    void push(int x){deque.push_back(x);}    void pop(){deque.pop_front();}private:    Deque deque;};

如果继承Deque那么在子类中会暴露过多信息,所以通过添加为成员的方式来使用Deque的接口。

0 0
原创粉丝点击