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

做明星ps黄图网站营销推广软件

做明星ps黄图网站,营销推广软件,网站策划公司,报备小程序怎么制作目录 适配器模式(Adapter Pattern) 实际应用 图形渲染库适配器 日志系统适配器 支付系统适配器 总结 适配器模式(Adapter Pattern) 适配器模式是一种结构型设计模式,它使得原本由于接口不兼容而不能一起工作的类…

目录

适配器模式(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.shuangfujiaoyu.com/news/1674.html

相关文章:

  • .php是什么网站seo的基本步骤顺序正确的是
  • 霸州网站建设seo在线网站推广
  • wordpress3.9漏洞上海关键词优化公司bwyseo
  • 互联网怎么推广产品刷seo关键词排名软件
  • 公司做外贸的网站百度游戏官网
  • 做卖衣服网站源代码常见的网络营销模式
  • 网站统计有哪些百度推广获客成本大概多少
  • 不动产登记门户网站建设商丘网站推广公司
  • 北京做网站公司哪家强怎样做推广营销
  • 广州网站seoseo优化排名方法
  • 自己做个网站怎么做推广赚钱项目
  • 企业宣传册模板图片关键词优化的价格查询
  • flash代码做网站教程网络推广引流是做什么的
  • 中国监理建设注册网站aso推广平台
  • 淄博公司做网站锦州网站seo
  • 天猫优惠卷怎么做网站桔子seo网
  • 网站怎么做关键词优化外贸怎么建立自己的网站
  • 住房城市建设委官方网站seo内链优化
  • 网站推送怎么做线上宣传方式有哪些
  • java购物网站开发教学视频推广营销平台
  • 乌鲁木齐可以做网站的公司高质量外链购买
  • 怎么做搜索网站近三天重大新闻摘抄
  • 免费做宣传的网站是深圳百度推广
  • 网站的seo优化怎么做湘潭网站制作
  • 珠宝网站建设公司百度竞价是seo还是sem
  • 东莞网站制作公司网站应该如何进行优化
  • 济南高新区 网站建设如何优化推广网站
  • 深圳网站制作公司排名南宁网络推广有几家
  • 建设一个网站 最好是官网那种搜索引擎优化的英文
  • 公司网站域名续费百度招聘