策略模式
本质上就是多态的应用,虚函数
观察者模式
在被观察对象中添加observer指针,observer为抽象类(接口),之后会有具体的concreteobserver类继承observer类,添加(移除)concreteobserver对象到被观察对象中
装饰者模式
使用组合替代继承,具体实现方式为Decorator会继承component类,并且Decorator类中有component *con的指针(指向的对象为concretecomponent的实例化),之后methodA函数会执行一些额外操作,之后指向con->methodA()函数,这样的话就在methodA的基础上进行了一些额外操作。
桥模式
将class的功能进行分类,比如平台实现和业务实现,平台实现抽象出来为implementor,业务实现抽象为abstraction;同时abstraction有implementor的指针,执行imp->oprationimpl()时候就会运行不同对象的实现。
工厂模式
目标:绕过对象创建过程中的new,紧耦合。使用抽象类的指针,执行抽象类的虚函数。
抽象工厂模式
解决问题:一系列相互依赖的对象
方案:提供一个结构,该接口负责创建一系列相互依赖的对象,无需指定他们具体的类
原型模式
解决问题:某些结构复杂复杂的对象的创建
使用原型实例指定创建对象的种类,然后通过拷贝这些原型来创建新的对象