c++策略模式
c++策略模式
- 概念
- 角色和職責(zé)
- 策略模式優(yōu)缺點(diǎn)
- 案例
概念
Strategy模式也叫策略模式是行為模式之一,它對(duì)一系列的算法加以封裝,為所有算法定義一個(gè)抽象的算法接口,并通過繼承該抽象算法接口對(duì)所有的算法加以封裝和實(shí)現(xiàn),具體的算法選擇交由客戶端決定(策略)。Strategy模式主要用來(lái)平滑地處理算法的切換 。
角色和職責(zé)
Strategy:
策略(算法)抽象。
ConcreteStrategy
各種策略(算法)的具體實(shí)現(xiàn)。
Context
策略的外部封裝類,或者說(shuō)策略的容器類。根據(jù)不同策略執(zhí)行不同的行為。策略由外部環(huán)境決定。
適用于:
準(zhǔn)備一組算法,并將每一個(gè)算法封裝起來(lái),使得它們可以互換。
策略模式優(yōu)缺點(diǎn)
它的優(yōu)點(diǎn)有:
總結(jié)
- 上一篇: c++责任链模式
- 下一篇: 花呗收款服务费是什么意思