适配器模式(C++)
2021-05-13 12:30
标签:依赖 系统 queue ide 隔离 lan push 增强 使用 作用: 作为两个不兼容接口之间的桥梁,属于结构型模式. 何时使用: 关键方案: 继承或依赖(推荐). 优点: 缺点: 组合实现适配器: 这个是组合实现的适配器,还可以使用继承,不过因为继承的强依赖性,一般会推荐使用组合来实现 : 适配器模式(C++) 标签:依赖 系统 queue ide 隔离 lan push 增强 使用 原文地址:https://www.cnblogs.com/xl2432/p/13130059.html介绍
UML
示例
//双端队列,需适配的对象
class Deque{
public:
void push_back(int x);
void push_front(int x);
void pop_back();
void pop_front();
};
//接口,向外暴露
class Sequence{
public:
virtual void push(int x) = 0;
virtual void pop() = 0;
}
//单端队列
class Queue : public Sequence{
public:
void push(int x) override {
deque_.push_back(x);
}
void pop() override {
deque_.pop_front();
}
private:
Deque deque_;
};
//双端队列
class Deque{
public:
void push_back(int x);
void push_front(int x);
void pop_back();
void pop_front();
};
class Sequence{
public:
virtual void push(int x) = 0;
virtual void pop() = 0;
}
//单端队列
class Queue : public Deque, public Sequence {
public:
void push(int x) override {
push_back(x);
}
void pop() override {
pop_front();
}
};
适配器模式/装饰模式/代理模式的区别?
上一篇:浅拷贝和深拷贝以及数组去重示例
下一篇:webpack4常用片段