策略(演算法)抽象。
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 ...