3_1 StrategyMode.cpp 策略模式
生活随笔
收集整理的這篇文章主要介紹了
3_1 StrategyMode.cpp 策略模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
// 定義:定義一系列的算法,把他們一個個封裝起來,并且使他們
// 可以相互替換,該模式使得算法獨立于客戶端的變化
//
// 模式舉例:小明旅行去昆明,采用交通工具可以是飛機,高鐵,火車
//
// 模式特點:
//
//#include<iostream>
using namespace std;class Strategy
{
public:virtual void algorithmInterface()=0;
};class ConcreteStrategyA : public Strategy
{
public:virtual void algorithmInterface(){cout << "run algorithm A"<<endl;}
};class ConcreteStrategyB : public Strategy
{
public:virtual void algorithmInterface(){cout << "run algorithm B"<<endl;}
};class Context
{
public:Context(Strategy * strategy){m_strategy = strategy;}void runStrategy(){m_strategy->algorithmInterface();}protected:Strategy * m_strategy;
};int main()
{Context * context = new Context(new ConcreteStrategyA);context->runStrategy();return 0;
}
?
總結
以上是生活随笔為你收集整理的3_1 StrategyMode.cpp 策略模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1_1 FactoryMode 工厂模式
- 下一篇: 2_7 FlyweightMode 享元