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

如何网上快速接网站开发订单用天地图做网站

如何网上快速接网站开发订单,用天地图做网站,黄冈建设网站,阿里wordpress怎么安装往期回顾 C常用23种设计模式总结(一)------单例模式 C常用23种设计模式总结(二)------观察者模式 什么是装饰模式 装饰模式是一种结构型设计模式,它允许你在运行时为对象动态添加新的行为。该模式通过将对象放入包装器中来实现这一点,这个包装器会实现与…

往期回顾
C++常用23种设计模式总结(一)------单例模式
C++常用23种设计模式总结(二)------观察者模式

什么是装饰模式

装饰模式是一种结构型设计模式,它允许你在运行时为对象动态添加新的行为。该模式通过将对象放入包装器中来实现这一点,这个包装器会实现与被包装对象相同的接口,并且会将所有方法的调用委派给被包装对象。同时,包装器还可以定义一些额外的行为,例如添加新的方法或修改现有方法的行为。

装饰模式的主要优点是它允许你在不修改现有代码的情况下扩展对象的功能。这使得代码更加灵活和可维护,因为你可以通过添加新的装饰器来实现新的功能,而不必修改现有的代码。此外,装饰模式还遵循开闭原则,因为它允许你在不修改现有代码的情况下添加新的功能。

然而,装饰模式也有一些缺点。首先,由于每个装饰器都需要实现与被包装对象相同的接口,因此可能会导致类的数量增加。此外,由于装饰器可以嵌套,因此可能会导致代码变得复杂和难以理解。最后,装饰模式可能会导致性能下降,因为每个方法调用都需要经过多个装饰器的处理。

参考代码

#include <iostream>// 抽象组件
class Component {
public:virtual void operation() = 0;
};// 具体组件
class ConcreteComponent : public Component {
public:void operation() override {std::cout << "具体组件的操作" << std::endl;}
};// 抽象装饰器
class Decorator : public Component {
public:Decorator(Component* comp) : component(comp) {}void operation() override {if (component != nullptr) {component->operation();}}
protected:Component* component;
};/*续写*/// 具体装饰器A
class ConcreteDecoratorA : public Decorator {
public:ConcreteDecoratorA(Component* comp) : Decorator(comp) {}void operation() override {Decorator::operation();std::cout << "具体装饰器A的操作" << std::endl;}
};// 具体装饰器B
class ConcreteDecoratorB : public Decorator {
public:ConcreteDecoratorB(Component* comp) : Decorator(comp) {}void operation() override {Decorator::operation();std::cout << "具体装饰器B的操作" << std::endl;}
};int main() {Component* component = new ConcreteComponent();Component* decoratorA = new ConcreteDecoratorA(component);Component* decoratorB = new ConcreteDecoratorB(decoratorA);decoratorB->operation();delete decoratorB;delete decoratorA;delete component;return 0;
}

运行结果

具体组件的操作
具体装饰器A的操作
具体装饰器B的操作
http://www.yayakq.cn/news/57448/

相关文章:

  • 做微整的网站广告设计与制作主要学什么
  • 在线做图表网站哪个搜索引擎能搜敏感内容
  • dw做的网站如何让别人看看免费建站网站一级大录像不卡在线看网页
  • 保险公司官方网站wordpress首页显示分类目录下的一个类别
  • 新旧网站对比东莞商贸公司寮步网站建设价格
  • 网站添加备案信息吗怎样制作自己的app
  • 东莞高端网站建设多少钱西安seo经理
  • 龙华营销型网站设计湖北网络建设公司网站
  • 企业网站建设实训网店推广是什么
  • 专业的网站建设运营做一级域名网站多少钱
  • 地方网站定位论坛优化seo
  • 学网站建设有什么用WordPress自动修改标签别名
  • 沧州做网站哪家好psd数据网站
  • wordpress混乱seo人员招聘
  • 网站及移动端建设情况网页备用页
  • 电子商务html网站模板wordpress设置网站地图
  • 兰州网站建设尚美做外贸需关注的网站
  • 各大网站什么时候恢复彩色网络游戏代理平台
  • 手机网站制作步骤盐城网络
  • 自贡网站建设上海有名的公司
  • 欧美做视频网站乱码网站怎么办
  • 江苏网站建设渠道网站是如何做的
  • 江华县网站开发如何编辑网页
  • 建设工程质量 协会网站个人网站做商城
  • 单页网站cpa虚拟主机搭建网站兼职
  • 深圳快速seo排名优化互联网seo是什么意思
  • 昆明网站建设王道下拉棒不需要网站备案的广告联盟
  • 如何链接自己做的网站怎么提升网站收录
  • 硅胶东莞网站建设辽宁省建设安全监督网网站
  • 衡水移动网站建设价格高校宣传网站建设