Bridge Pattern
概念
桥接模式,待补充
Pimpl Pattern
概念
Pointer to Implementation,即在 handle class 内通过一个私有的成员指针变量,将指针所指向的 implementation class 的内部成员进行隐藏
优点
- 降低模块间耦合
- 对 handle class 隐藏了 implementation class 的实现,修改后者的成员不需要重新编译前者
- 提高编译速度
- 类的接口与实现分离
- 提高接口稳定性
使用
通常是在 handle class 头文件中声明私有的 implementation class 类型与其指针,cpp 文件中定义其实现,代码可见参考部分提供的示例
注意事项
- 编译器仅检查 handle class 的 const 方法中的 pimpl 指针是否被修改,而不会检查 (普通) pimpl 指针指向实例的任何成员是否被修改
- 禁止拷贝或者执行深拷贝