您的位置:首页 > 其它

学习设计模式——代理模式

2011-12-05 21:44 363 查看
代理模式:为其他对象提供一种代理以控制对这个对象的访问!

GOOD:远程代理,可以隐藏一个对象在不同地址空间的事实

虚拟代理:通过代理来存放需要很长时间实例化的对象

安全代理:用来控制真实对象的访问权限

智能引用:当调用真实对象时,代理处理另外一些事

#include<string>
#include<iostream>

using namespace std;

//定义接口

class Interface

{

public:

virtual void Request()=0;

};

//真实类

class RealClass:public Interface

{

virtual void Request()

{

cout<<"真实的请求"<<endl;

}

};

//代理类

class ProxyClass:public Interface

{

private:

RealClass *m_realClass;

public:

virtual void Request()

{

m_realClass=new RealClass();

m_realClass->Request();

delete m_realClass;


}

};


//客户端

int main()

{

ProxyClass *test=new ProxyClass();

test->Request();

return 0;


}


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: