設計模式 Strategy 策略

2022-06-19 03:15:12 字數 1500 閱讀 9413

意圖:定義一系列的演算法,把他們乙個個封裝起來,並且使他們可以互相替換,使演算法可以獨立於使用它的客戶變化而變化

暫無理解,以後再回來編輯,先貼**

taxstrategy.h

#pragma once

class

taxstrategy

;};

cntax.h

#pragma once#include

"taxstrategy.h

"class

cntax :

public

taxstrategy

;

detax.h

#pragma once#include

"taxstrategy.h

"class

detax :

public

taxstrategy

;

ustax.h

#pragma once#include

"taxstrategy.h

"class

ustax :

public

taxstrategy

;

salesorder.h

#pragma once#include

"taxstrategy.h

"class

salesorder

;

tasstrategy.cpp

#include

"taxstrategy.h

"

cntax.cpp

#include

"cntax.h

"double

cntax::calculate()

detax.cpp

#include

"detax.h

"double

detax::calculate()

ustax.cpp

#include

"ustax.h

"double

ustax::calculate()

salesorder.cpp

#include

"salesorder.h

"salesorder::salesorder(strategefactory *factory)

salesorder::~salesorder()

double

salesorder::calculate()

main.cpp

#include

#include

"salesorder.h

"int

main()

未完成.

策略設計模式(strategy)

策略模式定義了一系列演算法,並將每個演算法封裝起來,使他們可以相互替換,且演算法的變化不會影響到使用演算法的客戶。需要設計乙個介面,為一系列實現類提供統一的方法,多個實現類實現該介面,設計乙個抽象類 可有可無,屬於輔助類 提供輔助函式 統一介面 public inte ce icalculator ...

設計模式 策略模式(Strategy)

策略模式 定義了演算法家族,分別封裝起來,讓它們之間可以互相替換,此模式讓演算法的變化不會影響到使用演算法的使用者。封裝變化點是物件導向的一種很重要的思維方式 strategy類,定義所有支援的演算法的公共介面 抽象演算法類 abstract class strategy 演算法方法 public ...

設計模式 策略模式(strategy)

策略模式定義了一系列演算法,並將每個演算法封裝起來,使他們可以相互替換,且演算法的變化不會影響到使用演算法的客戶。需要設計乙個介面,為一系列實現類提供統一的方法,多個實現類實現該介面,設計乙個抽象類 可有可無,屬於輔助類 提供輔助函式 抽象折扣類 public inte ce memberstrat...