C++设计模式之Proxy模式怎么实现
发表于:2025-11-10 作者:千家信息网编辑
千家信息网最后更新 2025年11月10日,今天小编给大家分享一下C++设计模式之Proxy模式怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面
千家信息网最后更新 2025年11月10日C++设计模式之Proxy模式怎么实现
今天小编给大家分享一下C++设计模式之Proxy模式怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
代理模式很容易理解,就是代替别人去做某一件事,打个比方,我们需要买水果,一般是去超市或者水果店买水果,很少有人去果园买水果,果园是生产水果的地方,但很少出售水果,在这里,水果店,超市就成了代理。
首先定义一个抽象类,提供所有的函数接口。
1.定义卖水果的抽象类,也就是接口,果园与超市都要继承这个类。
#pragma onceclass CSellFruits//定义一个抽象类{public: CSellFruits(void); virtual ~CSellFruits(void); virtual void sellapple()=0; //定义接口,卖苹果 virtual void sellorange()=0;//定义接口,卖橘子}; #include "SellFruits.h"CSellFruits::CSellFruits(void){} CSellFruits::~CSellFruits(void){}2.定义具体类,也就是果园类,果园生产水果,但是一般不买水果
#pragma once#include "sellfruits.h"#includeclass COrchard : public CSellFruits{public: COrchard(void); virtual ~COrchard(void); virtual void sellapple(); virtual void sellorange();}; #include "Orchard.h"COrchard::COrchard(void){} COrchard::~COrchard(void){} void COrchard::sellapple(){ printf("Sell apple\n");} void COrchard::sellorange(){ printf("Sell orange\n");}
3.定义代理类,代理卖水果的类
#pragma once#include "sellfruits.h"#include "Orchard.h"#includeclass CProcySellFruits : public CSellFruits{public: CProcySellFruits(void); virtual ~CProcySellFruits(void); virtual void sellapple(); virtual void sellorange();private: CSellFruits *p_SellFruits; //传入接口对象}; #include "ProcySellFruits.h"CProcySellFruits::CProcySellFruits(void):p_SellFruits(NULL){} CProcySellFruits::~CProcySellFruits(void){} void CProcySellFruits::sellapple(){ if(this->p_SellFruits==NULL) { this->p_SellFruits=new COrchard(); //用被代理的类实例化 } this->p_SellFruits->sellapple();//代理果园卖苹果} void CProcySellFruits::sellorange(){ if(this->p_SellFruits==NULL) { this->p_SellFruits=new COrchard(); //用被代理的类实例化 } this->p_SellFruits->sellorange();//代理果园卖橘子}
4.实际调用
CProxySellFruits* p=new CProxySellFruits(); //用代理类卖水果 p->SellApple(); p->SellOrange();
以上就是"C++设计模式之Proxy模式怎么实现"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
水果
代理
果园
模式
接口
知识
篇文章
超市
设计模式
C++
设计
也就是
内容
实例
就是
橘子
水果店
苹果
生产
不同
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
法制教育及网络安全教育
国土资源局网络安全领导小组
服务器反代
高斯数据库如何获取表的建表语句
超市收银机怎么修改数据库
关于网络安全意识的文章范文
讨论网络安全的英语作文
网络安全制度内容
长沙芯泰软件开发有限公司地点
惠普服务器资料
北京创新服务器购买
实时数据库 sql
德玛西亚服务器
栖霞商城软件开发
用什么软件开发c
初中生学习什么软件开发好
国内网络安全书籍
通讯录备份数据库
自学软件开发游戏
求生之路谁是内鬼服务器
浙江学习软件开发平台
服务器联机视频完结
深圳市易讯网络技术
网龙服务器卖的什么的
服务器密码批量管理
所学计算机网络技术看法
秦颂古今服务器
大数据时代计算机网络安全问题
数控嵌入式软件开发
数据库原理视图的名词解释