设计模式-代理模式
来源:互联网 发布:怕死 陈奕迅 知乎 编辑:程序博客网 时间:2024/05/22 09:44
代理模式(Proxy):为其他对象提供一种代理以控制对这个对象的访问
例子:一个追求者通过一位代理人去追求一个女生,在客户端并不需要知道追求者的存在
UML:
//抽象类class Gift {public: virtual void GiveDolls() = 0; virtual void GiveFlowers() = 0; virtual void GiveChocolate() = 0;};//被追求者class Girl {private: string m_name;public: Girl(string name):m_name(name){} string Getname() { return m_name; }};//追求者class Pursuit :public Gift {private: Girl *m_girl;public: Pursuit(Girl *girl):m_girl(girl){} void GiveDolls() { cout << m_girl->Getname() << " 送你洋娃娃" << endl; } void GiveFlowers() { cout << m_girl->Getname() << " 送你鲜花" << endl; } void GiveChocolate() { cout << m_girl->Getname() << " 送你巧克力" << endl; }};//代理类class Proxy :public Gift{private: Pursuit *m_persuit;public: Proxy(Girl *girl) { m_persuit = new Pursuit(girl); } void GiveDolls() { m_persuit->GiveDolls(); } void GiveFlowers() { m_persuit->GiveFlowers(); } void GiveChocolate() { m_persuit->GiveChocolate(); }};int main(){ Girl *girl = new Girl("jiaojiao"); Proxy *proxy = new Proxy(girl); proxy->GiveChocolate(); proxy->GiveDolls(); proxy->GiveFlowers(); system("pause"); return 0;}
1 0
- 设计模式--【代理模式】
- 设计模式:代理模式
- 设计模式--代理模式
- 设计模式---代理模式
- 设计模式-代理模式
- 设计模式---代理模式
- 设计模式 代理模式
- 设计模式-【代理模式】
- 设计模式-代理模式
- 设计模式----代理模式
- 设计模式-代理模式
- 设计模式---代理模式
- 设计模式--代理模式
- 设计模式-代理模式
- 设计模式- 代理模式
- 设计模式---代理模式
- 设计模式 - 代理模式
- 【设计模式】代理模式
- strcpy_s与strcpy的比较
- Android 静态字符串安全存储方案
- HEARTBEAT+DRBD+NFS 高可用共享搭建
- Linux shell脚本 将数据库超时的订单号 发送给客服
- Not so Mobile UVA
- 设计模式-代理模式
- Candence16.6打开文件的问题
- vua 1660 Cable TV Network 最大流最小割 求割点
- 从宏函数到内联函数
- java中空串""与null的区别与判断
- HDOJ 5410 01背包+完全背包
- c++第二天
- 《C++ primer plus》附录G:STL方法与函数(一) 学习笔记
- webstorm2016.2激活方法