行為型模型 策略模式

2021-09-07 15:37:01 字數 873 閱讀 5587

策略(演算法)抽象。

concretestrategy

各種策略(演算法)的具體實現。

context

策略的外部封裝類,或者說策略的容器類。根據不同策略執行不同的行為。策略由外部環境決定。

好處:

//演算法的實現 和 客戶端的使用 解耦合

//使得演算法變化,不會影響客戶端

適用於:

準備一組演算法,並將每乙個演算法封裝起來,使得它們可以互換。

/*

* * 行為型模型 策略模式

* strategy模式也叫策略模式是行為模式之一,它對一系列的演算法加以封裝,為所有演算法定義乙個抽象的演算法介面,並通過繼承該抽象演算法介面對所有的演算法加以封裝和實現,具體的演算法選擇交由客戶端決定(策略)。strategy模式主要用來平滑地處理演算法的切換 。 *

*/#define _crt_secure_no_warnings#include

#include

#include

class

strategy

};class des: public

strategy

};class aes: public

strategy

};class

context

void

operator()

private

: strategy *p;

};void

mytest()

intmain()

行為型模式 策略模式

策略 class salestrategy class strategya public salestrategy class strategyb public salestrategy 策略使用者 class salesman void yell salestrategy m strategy 呼...

行為型模式 策略模式

liebrother原文 行為型模式 策略模式 十一大行為型模式之五 策略模式。姓名 策略模式 英文名 strategy pattern 價值觀 集計謀於一身 個人介紹 define a family of algorithms,encapsulate each one,and make them ...

行為型模式 策略模式

liebrother原文 行為型模式 策略模式 十一大行為型模式之五 策略模式。姓名 策略模式 英文名 strategy pattern 價值觀 集計謀於一身 個人介紹 define a family of algorithms,encapsulate each one,and make them ...