设计模式-代理模式
来源:互联网 发布:杜应流 知乎 编辑:程序博客网 时间:2024/06/05 10:24
代理模式:为其他对象提供一种代理以控制对这个对象的访问。
代理模式的使用情况:
1. 远程代理,也就是为了一个对象在不同的地址空间提供局部代表,这样可以隐藏一个对象存在于不同地址空间的事实。
2. 虚拟代理,根据需要创建一个开销很大的对象,通过它来存放实例化需要很长时间的真实对象。
3. 安全代理,用来控制真实对象的访问权限。
4. 智能指引,当调用真实对象时,代理可以处理另外一些事。
#include <iostream.h>#include <string.h>class CGiveGift{public:virtual void GiveDolls()=0;virtual void GiveFlowers()=0;virtual void GiveChocolate()=0;};class CPursuit:public CGiveGift{private:char m_girl[30];public:CPursuit(char *girl){strcpy(m_girl,girl);}void GiveDolls(){cout<<m_girl<<",送你洋娃娃"<<endl;}void GiveFlowers(){cout<<m_girl<<",送你花"<<endl;}void GiveChocolate(){cout<<m_girl<<",送你巧克力"<<endl;}};class CProxy:public CGiveGift{private:CPursuit m_pursuit;public:CProxy(char *girl):m_pursuit(girl){}void GiveDolls(){m_pursuit.GiveDolls();}void GiveFlowers(){m_pursuit.GiveFlowers();}void GiveChocolate(){m_pursuit.GiveChocolate();}};void main(){CProxy proxy("Lucy");proxy.GiveDolls();proxy.GiveFlowers();proxy.GiveChocolate();}
- 设计模式--【代理模式】
- 设计模式:代理模式
- 设计模式--代理模式
- 设计模式---代理模式
- 设计模式-代理模式
- 设计模式---代理模式
- 设计模式 代理模式
- 设计模式-【代理模式】
- 设计模式-代理模式
- 设计模式----代理模式
- 设计模式-代理模式
- 设计模式---代理模式
- 设计模式--代理模式
- 设计模式-代理模式
- 设计模式- 代理模式
- 设计模式---代理模式
- 设计模式 - 代理模式
- 【设计模式】代理模式
- 详细讲解Oracle中isnumeric的三种实现
- 初级排序算法(选择排序、插入排序、希尔排序)
- poj 3204 最大流
- Java多线程之CyclicBarrier
- Goautodial 常见问题(一)
- 设计模式-代理模式
- NeHe_OpenGL_第九课 3D空间中移动图像
- 将int转为string类及将string类转为int类
- MySQL报错:The MySQL server is running with the --skip-grant-tables option so it cannot execute this st
- Java多线程之CountDownLatch
- Python的@符号 --decorator
- JavaWeb文章索引
- [leetcode] Best Time to Buy and Sell Stock
- 浅析SAX,DOM,JAXP,JDOM与DOM4J之间的关系