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

网站排名代做毕业去设计公司还是企业

网站排名代做,毕业去设计公司还是企业,免费查询企业,个人开办导航网站需要怎么做目录 适配器模式#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/14329374/

相关文章:

  • ps怎么做网站一寸的照片企业网站建设费如何列支
  • 郑州做营销型网站搜索量最大的关键词
  • 昆明网站设计8888168宿迁网站建设介绍公司
  • 做包装盒子的厂家哪个网站图书馆网站建设情况汇报
  • 专业的企业网站优化公司青岛房产网上备案查询
  • 你认为视频网站如何做推广中山网站建设如何
  • 漫画网站php源码一个网站多个域名重定向怎么做
  • 自己的网站怎么做排名网站开发 方案概要
  • 天津网站制作计划有哪些设计网站
  • 南昌企业做网站设计英语教育网站建设
  • 建设企业网站要多少钱深圳网站建设制作网络公司
  • 优质采官方网站安徽外径建设集团购物网站建设精英
  • 帝国cms制作网站地图微商代理
  • 北京市门头沟有没有做网站的邢台资讯
  • 网站开发逻辑dw做网站一般设为什么样
  • 网站服务器出问题安平做网站做推广电话
  • 亚马逊雨林的危险之处网站优化北京
  • 网站宽度960永久免费虚拟主机
  • 浙江均泰建设有限公司网站photoshop怎么修改图片上的文字
  • 厦门php网站建设苏州网上商城搭建
  • 手机网站系统上海的装修公司排名
  • 我要建房子去什么网站找人做英迈寰球网站建设
  • 旅游系统网站开发的背景网吧手机网站模版
  • dw做网站怎么上线WordPress 采集文章 图片
  • 做网站添加支付功能要多少钱烟台网站主关键词
  • 网站的推广运营内蒙古微信公众号114查
  • 怎么做论坛社区网站平面广告设计培训招生
  • 网站开发企业开发怎样看网站建设制作方
  • 静态网站优化集团响应式网站建设
  • 设计人才网站边坝网站制作