策略模式c++实现
来源:互联网 发布:淘宝怎么申请天天特价 编辑:程序博客网 时间:2024/05/29 16:44
#include<iostream>using namespace std;class Algorithm{public: virtual void run(){cout<<"A default algorithm."<<endl;};};class AlgorithmA : public Algorithm{public: void run(){cout<<"Algrithm A"<<endl;};};class AlgorithmB : public Algorithm{public: void run(){cout<<"Algorithm B"<<endl;};};class Context{public: Context(Algorithm * a){algorithm = a;}; void run(){algorithm->run();};private: Algorithm * algorithm;};int main(){ Context c(new AlgorithmB); c.run(); return 0;}