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

模板建网站域名解析系统的英文缩写

模板建网站,域名解析系统的英文缩写,微信公众号运营内容,网站维护知识定义 为其他对象提供一种代理以控制(隔离,使用接口)对这个对象的访问。。 应用场景 在面向对象系统中,有些对象由于某种原因(比如对象创建的开销很大,或者某些操作需要安全控制,或者需要进程外的访问等)直接访问会给使用者、或…

定义

为其他对象提供一种代理以控制(隔离,使用接口)对这个对象的访问。。

应用场景

  • 在面向对象系统中,有些对象由于某种原因(比如对象创建的开销很大,或者某些操作需要安全控制,或者需要进程外的访问等)直接访问会给使用者、或者系统结构带来很多麻烦。
  • 如何在不失去透明操作对象的同时来管理/控制这些对象特有的复杂性?增加一层间接层是软件开发中常见的解决方式。

结构

在这里插入图片描述

//test.cpp
/****************************************************/
#include "Proxy.h"
int main()
{// 玩魔兽ProxyWOW* proxy = new ProxyWOW();// 加载proxy->load();// 充值proxy->recharge(1000);// 加载proxy->load();// 退出proxy->exit();// 清理内存delete proxy;proxy = nullptr;return 0;
}

代码示例

//Proxy.h
/****************************************************/
#ifndef PROXY_H
#define PROXY_H
#include <iostream>
using namespace std;// 抽象游戏类
class Game 
{
public:// 游戏加载virtual void load() = 0;// 游戏退出virtual void exit() = 0;
};// 真实游戏类-魔兽世界
class WOW : public Game 
{
public:// 游戏加载virtual void load() {cout << "魔兽世界加载。" << endl;}// 游戏退出virtual void exit() {cout << "魔兽世界退出。" << endl;}
};// 代理类-魔兽代理
class ProxyWOW : public Game 
{
public:// 构造函数ProxyWOW() {m_wow = new WOW();}// 析构函数virtual ~ProxyWOW() {if (m_wow != nullptr) {delete m_wow;m_wow = nullptr;}}// 充值时间void recharge(int money) {m_time += money / 100;cout << "充值:" << money << endl;cout << "获得时长:" << m_time << endl;}// 游戏加载virtual void load() {cout << "代理启动。" << endl;if (m_time > 0) {m_wow->load();cout << "游戏时长1小时。" << endl;m_time -= 1;cout << "剩余时长:" << m_time << endl;flag = true;}else {cout << "剩余游戏时长不足,请充值。" << endl;flag = false;}}// 游戏退出virtual void exit() {if (flag) {m_wow->exit();flag = false;}cout << "代理关闭。" << endl;}private:bool flag = false;int m_time = 0;WOW* m_wow;
};#endif

运行结果
在这里插入图片描述

要点总结

  • “增加一层间接层”是软件系统中对许多复杂问题的一种常见解决方法。在面向对象系统中,直接使用某些对象会带来很多问题,作为间接层的proxy对象便是解决这一问题的常用手段。
  • 具体proxy设计模式的实现方法、实现粒度都相差很大,有些可能对单个对象做细粒度的控制,如copy-on-write技术, 有些可能对组件模块提供抽象代理层,在架构层次对对象做proxy。
  • Proxy并不一定要求保持接口完整的一致性,只要能够实现间接控制,有时候损及一些透明性是可以接受的。
http://www.yayakq.cn/news/872642/

相关文章:

  • 岳阳网站开发公司WordPress文章底部广告插件
  • 学网站开发要学什么网站怎么建设以及维护
  • 自己怎么做家政网站国家域名注册
  • 软件开发和网站建设的区别佛山专业做网站的
  • 网站服务器哪个好百度推广400电话
  • 司法行政网站建设目的wordpress 目录表插件
  • 网站建设怎么让百度搜索到新西兰签证网站开发
  • 做外贸的社交网站网站开发代码交接文档书
  • 装修平台入驻东莞网络排名优化
  • 东莞百度网站推广百分百营销软件官网
  • 免费的作文网站wordpress 雷锋模板
  • 网站规划与建设进度编写html的软件有哪些
  • 杭州 网站外包看网红直播做爰的网站
  • 网站没做好可以备案吗163企业邮箱怎么开通注册账号
  • 网站建设火凤凰ajax ie8 wordpress
  • 网站设计建站网页html模板代码
  • 什么样的公司开做网站北京网站优化软件公司
  • 微信电商网站开发单县网站
  • 重庆软件制作平台沧州seo公司
  • 佛山企业网站建设机构网站做关键词库的作用
  • 合肥百姓网网站建设有哪些做电子商务的网站
  • 海会网络建设网站erp软件公司
  • 做同业业务一般关注哪些网站软件开发app开发
  • 太原论坛建站模板公司注销后 网站备案
  • 中国最好的网络营销公司seo关键字优化
  • 建设部网站录入业绩网易云播放器做网站播放
  • 长沙 外贸网站建设建个人网站怎么赚钱吗
  • 深圳网站建设制作公司那个公司可以做网站
  • 家电网站策划贵阳专业做网站
  • 江苏省建设教育协会网站首页wordpress salient 8