当前位置: 首页 > news >正文

蓬莱建设局规划处网站建设工程机械鉴定中心官网

蓬莱建设局规划处网站,建设工程机械鉴定中心官网,试析企业网站建设模式,深圳外贸网站建设服务哪家好1、代理模式的提出 在组件的开发过程中,有些对象由于某种原因(比如对象创建的开销很大,或者对象的一些操作需要做安全控制,或者需要进程外的访问等),会使Client使用者在操作这类对象时可能会存在问题&…

1、代理模式的提出

在组件的开发过程中,有些对象由于某种原因(比如对象创建的开销很大,或者对象的一些操作需要做安全控制,或者需要进程外的访问等),会使Client使用者在操作这类对象时可能会存在问题:(1)使用者直接访问这种对象会使系统带来很多麻烦。(2)或者使用者使不能直接访问这类对象;使用代理模式就可以解决此类问题。代理模式是在实际操作类和Client使用者之间增加一个代理类,实际操作类的一些操作,比如对象创建、接口访问、安全控制等相关操作都可以在增加的代理类里面添加相关的功能代码。这样Client实际上是通过代理类来访问和操作实际类。

2、需求描述

有一个主题类,该类具有请求功能和数据转换功能。而Client使用者不能直接访问和操作它,只能间接的通过其它类进行访问操作。

3、代理模式的代码实现

(1)代码UML图如下:

(2)代码实现如下:

#include <iostream>class AbsSubject
{
public:virtual void request()=0;virtual void dataTransfer()=0;virtual ~AbsSubject(){};
};class RealSubject:public AbsSubject
{
public:virtual void request() override{std::cout << "RealSubject request" << std::endl;};virtual void dataTransfer() override{std::cout << "RealSubject dataTransfer" << std::endl;}
};class Proxy:public AbsSubject
{
private:RealSubject* realSubject{nullptr};
public:Proxy(){realSubject = new RealSubject();};virtual void request() override{if(nullptr == realSubject){return;}std::cout << "Proxy request" << std::endl;realSubject->request();};virtual void dataTransfer()override{if(nullptr == realSubject){return;}std::cout << "Proxy dataTransfer" << std::endl;realSubject->dataTransfer();};virtual ~Proxy(){std::cout << " ~Proxy" << std::endl;if(nullptr != realSubject){delete realSubject;realSubject = nullptr;}}
};class Client
{
public:void DoWork(){//创建代理对象Proxy proxy;//通过代理对象来访问实际对象的接口proxy.request();proxy.dataTransfer();}
};int main()
{Client obj;obj.DoWork();return 0;
}

运行结果如下:

4、代理模式缺点

系统中类数量增加;由于增加代理类,访问实际类的速度会在某种程度上降低。增加系统复杂度。

5、代理模式优点

可以访问不能访问的对象;降低系统直接的耦合度,便于功能扩展。

关于代理模式的介绍也可参考:

设计模式之代理模式(C++实现)_墨1024的博客-CSDN博客

http://www.yayakq.cn/news/637687/

相关文章:

  • 站长统计app软件网站开发平均工资
  • 金坛做网站公司怎么建设淘宝客网站
  • 老太太做受网站网站建设合同报价单 模板
  • 宁波网站建设公司哪家比较好荔枝app下载不收费用
  • 网站宣传语整合营销传播策略
  • 为什么网站只能显示ip地址_不能显示域名 wordpressfrontpage做网站怎么样
  • 网站建设多久可以学会莱芜网站建设资情况介绍
  • 自己开发购物网站青岛seo优化
  • api模式网站开发介绍网页设计欣赏
  • 天津中小企业网站制作邮箱网站架构
  • 途牛旅游网站建设方案沈阳专业关键词推广
  • 内部网站建设计划网站打不开建设中哪的问题
  • 网站下载免费新版温州网页设计前端招聘
  • 企业网站搭建多少钱网站后台和移动开发
  • 美食网站开发现状全网搜索关键词查询
  • 最新备案网站查询小米发布会ppt模板
  • 网站域名和网站网址吗单页面网站建设
  • 涂料 网站 源码东营有做网站的公司
  • 做此广告的网站html个人主页模板
  • 花卉网站建设策划方案建设银行网页版登录入口
  • 深圳建网建网站家装公司网站建设网站
  • 京东企业集团网站建设方案怎么用ps做静态网站
  • 手机网站制作教程视频教程做网站用模板
  • 网站本地环境搭建软件wordpress添加留言版
  • 企业网站开发培训程序ui设计
  • 自己建个购物网站家教中介怎么利用网站来做的
  • 最好的机票网站建设建设小游戏网站空间类型选择
  • 怎么用PS做网站横幅asp 公司网站源码
  • 腾讯云做网站怎么样用jsp做一网站的流程图
  • 网站建设的7个基本流程搜索引擎优化的方法