c++ - 设计模式 - Adapter 和 Bridge 之间的区别?

标签 c++ oop design-patterns

我正在阅读 GoF 的设计模式,但我被桥接模式困住了。我不禁注意到它与适配器模式非常相似,我试图通过阅读 Stack Overflow 上的问题来理解两者之间的区别,但我仍然很困惑。

关于适配器模式的章节说有两种实现方式。首先是类适配器,其次是对象适配器。对象适配器(如书中所述)的好处之一是您不仅可以适配一个特定的类,还可以适配子类。

如果我错了请纠正我,但这种 Adapter 实现不正是 Bridge 的真正含义吗?换句话说,Bridge 不就是 Adapter 模式的对象实现版本,您也可以在其中使用子类吗?

谢谢。

附注如果您要发布代码示例,请使用 C++ 发布。

最佳答案

Bridge 包装它所代表的对象,但可以选择在运行时为具有相同接口(interface)的任何其他对象更改该对象,如果需要,可以更改 Bridge 对象的整个行为。 Adapter 通常是为一个特定的类和一个特定的对象创建的。

关于c++ - 设计模式 - Adapter 和 Bridge 之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17631488/

相关文章:

c++ - 您如何将回车键作为输入?

c++ - 如何调试 C++ python 扩展?

c++ - 检查类是否有一个空的析构函数

php - 从发布的数据创建对象实例 - PHP

Java 类层次结构

c++ - 从 C++ 类实现二维矩阵

java - 调整复合(设计模式)形状的大小

c# - 避免切换类型的设计模式或可接受的解决方案

c++ - 由其他更大的类组成的类问题

c++ - 从没有虚函数的 C++ 类继承