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

网站排名代做wordpress 自定义模板

网站排名代做,wordpress 自定义模板,高端外贸网站建设,食品网络营销策划书目录 适配器模式#xff08;Adapter Pattern#xff09; 实际应用 图形渲染库适配器 日志系统适配器 支付系统适配器 总结 适配器模式#xff08;Adapter Pattern#xff09; 适配器模式是一种结构型设计模式#xff0c;它使得原本由于接口不兼容而不能一起工作的类…目录 适配器模式Adapter Pattern 实际应用 图形渲染库适配器 日志系统适配器 支付系统适配器 总结 适配器模式Adapter Pattern 适配器模式是一种结构型设计模式它使得原本由于接口不兼容而不能一起工作的类可以协同工作。适配器模式通过将一个类的接口转换成客户端希望的另一种接口使得原本接口不兼容的类可以一起工作。适配器可以是对象适配器或类适配器对象适配器使用组合类适配器使用多重继承。 实际应用 图形渲染库适配器 假设我们有一个旧的图形渲染库和一个新的图形渲染接口我们需要使旧的库适配新的接口。 #include iostream// 旧的图形渲染库 class OldGraphicsRenderer { public:void drawCircle(float x, float y, float radius) {std::cout Old Renderer: Drawing Circle at ( x , y ) with radius radius \n;}void drawRectangle(float x, float y, float width, float height) {std::cout Old Renderer: Drawing Rectangle at ( x , y ) with width width and height height \n;} };// 新的图形渲染接口 class NewGraphicsRenderer { public:virtual void renderCircle(float x, float y, float radius) 0;virtual void renderRectangle(float x, float y, float width, float height) 0; };// 适配器类将旧的渲染库适配到新的接口 class GraphicsRendererAdapter : public NewGraphicsRenderer { private:OldGraphicsRenderer* oldRenderer; public:GraphicsRendererAdapter(OldGraphicsRenderer* renderer) : oldRenderer(renderer) {}void renderCircle(float x, float y, float radius) override {oldRenderer-drawCircle(x, y, radius);}void renderRectangle(float x, float y, float width, float height) override {oldRenderer-drawRectangle(x, y, width, height);} };int main() {OldGraphicsRenderer oldRenderer;GraphicsRendererAdapter adapter(oldRenderer);adapter.renderCircle(10, 10, 5);adapter.renderRectangle(20, 20, 10, 5);return 0; }日志系统适配器 假设我们有一个旧的日志系统和一个新的日志系统接口我们需要使旧的日志系统适配新的接口。 #include iostream #include string// 旧的日志系统 class OldLogger { public:void logMessage(const std::string msg) {std::cout Old Logger: msg \n;} };// 新的日志系统接口 class NewLogger { public:virtual void info(const std::string msg) 0;virtual void error(const std::string msg) 0; };// 适配器类将旧的日志系统适配到新的接口 class LoggerAdapter : public NewLogger { private:OldLogger* oldLogger; public:LoggerAdapter(OldLogger* logger) : oldLogger(logger) {}void info(const std::string msg) override {oldLogger-logMessage(INFO: msg);}void error(const std::string msg) override {oldLogger-logMessage(ERROR: msg);} };int main() {OldLogger oldLogger;LoggerAdapter adapter(oldLogger);adapter.info(This is an info message);adapter.error(This is an error message);return 0; }支付系统适配器 假设我们有一个旧的支付系统和一个新的支付接口我们需要使旧的支付系统适配新的接口。 #include iostream #include string// 旧的支付系统 class OldPaymentSystem { public:void makePayment(double amount, const std::string currency) {std::cout Old Payment System: Processing payment of amount currency \n;} };// 新的支付接口 class NewPaymentInterface { public:virtual void pay(double amount) 0; };// 适配器类将旧的支付系统适配到新的接口 class PaymentAdapter : public NewPaymentInterface { private:OldPaymentSystem* oldPaymentSystem; public:PaymentAdapter(OldPaymentSystem* paymentSystem) : oldPaymentSystem(paymentSystem) {}void pay(double amount) override {oldPaymentSystem-makePayment(amount, USD);} };int main() {OldPaymentSystem oldPaymentSystem;PaymentAdapter adapter(oldPaymentSystem);adapter.pay(100.0);return 0; }总结 适配器类通过包含或继承旧系统类并实现新接口的方法从而将旧系统的方法适配到新接口上。
http://www.hkea.cn/news/14449801/

相关文章:

  • 网站上传程序流程Wordpress 插件开发者
  • 怎样做网站后台运营wordpress如何改成中文字体
  • 移动手机网站建设源码网站php
  • 建网站什么样的域名最好湖南汽车软件网站建设
  • 佛山市网站建设 骏域动力qq空间怎么发布wordpress
  • 高级网站开发技术使用什么语言外链是不是把自己的网站信息发布到别人的网站上?
  • 简述创建一个网站的过程杭州网站建设哪家好
  • 黔东南州两学一做教育网站注册新公司网上核名流程
  • 专业网站的公司目标网站都有哪些内容
  • 网站文章在哪发布做seo微信小程序制作价格
  • 怎么做外卖网站上海网站建设与设计公司
  • 深圳建网站哪家好网站源码破解版
  • 网站建设多久学会推荐一个免费网站
  • 在线制作视频网站html5响应式公司网站模版
  • 国内老牌的广州网站建设软件开发工具03173课后题
  • 温州网站关键词推广网站建设推广费计入什么科目
  • 个人网站能百度推广吗wordpress换主题 无法打开
  • 宁河做网站公司百度权重查询
  • 做网站技术员商店商品管理系统
  • 建设银行 北京招聘网站河北做网站公司
  • 心理学网站开发公司部门工作总结
  • 网站建设计划设计网页设计师培训
  • 黄浦西安网站建设营销助手
  • 自适应导航网站模板牡丹江市住房和城乡建设局网站
  • 只做鞋子的网站wordpress google访客
  • 深圳建设局招标网站中国的科技成就
  • 网站在线统计代码个人工作室网页设计模板
  • 海南省建设注册中心网站陕西省网站备案
  • 手机网站怎样做seo查询平台
  • 撩人的网站怎么做建网站的公司广州