C++设计模式学习之策略模式
来源:互联网 发布:网游单机 数据库 编辑:程序博客网 时间:2024/05/17 05:16
Strategy:行为模式
封装算法:为所有的算法提供一个抽象的算法接口,并通过继承该抽象接口对所有的算法加以封装和实现。
具体的算法选择交由客户端决定。把公共代码提取公因式到父类
#include<stdlib.h>#include<iostream>using namespace std;class Strategy{public:virtual void SymEncrypt() = 0;};class Des :public Strategy{public:virtual void SymEncrypt(){cout << "使用DES加密" << endl;}};class AES :public Strategy{public:virtual void SymEncrypt(){cout << "AES加密" << endl;}};class Context{public:Context(Strategy *s){p = s;}void Operate(){p->SymEncrypt();}protected:private:Strategy *p;};void main(){//Strategy *s = NULL;//s = new AES;//s->SymEncrypt();//delete s;Strategy *s = NULL;Context *ctx = NULL;s = new AES;ctx = new Context(s);ctx->Operate();delete s;delete ctx;system("pause");}
阅读全文
0 0
- <C/C++ 版> 设计模式 学习之 策略模式
- C语言设计模式之策略模式
- 学习设计模式之--------策略模式
- 设计模式之策略模式学习
- 设计模式学习笔记之策略模式
- 设计模式学习笔记之策略模式
- 设计模式学习之策略模式
- 设计模式学习之路-----策略模式
- 设计模式之策略模式学习
- 学习:设计模式之策略模式
- 设计模式学习之策略模式
- 学习篇:设计模式之策略模式
- 设计模式之策略模式的学习
- java设计模式学习之策略模式
- 设计模式学习之--策略模式
- 设计模式学习之策略模式
- 设计模式学习笔记之策略模式
- 设计模式学习笔记之策略模式
- Caffe资源汇总
- 消除过期的对象引用感悟
- 8.10
- 453. Minimum Moves to Equal Array Elements DescriptionHintsSubmissionsDiscussSolution Discuss Pick O
- 使用Robot Framework+Appium进行自动化
- C++设计模式学习之策略模式
- 代码点(code point)和代码单元(code units)
- Java开发书单
- PostgreSQL 9.5.3 中文手册
- jquery mobile中历史记录history的执行机制
- 24 碰到的一个 idea的奇怪的编码问题
- k最近邻算法(kNN)
- Array和List的异同
- cifar10_resNet