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

罗湖网站建设罗湖网站设计sem竞价托管价格

罗湖网站建设罗湖网站设计,sem竞价托管价格,nas可以做网站,咨询装修组合模式定义 C组合模式(Composite Pattern)是一种结构型设计模式,他允许将对象组合成树形结构来表示“部分-整体”的层次结构;在组合模式中有两种基本类型的对象:叶子对象和组合对象,叶子对象时没有子对象…

组合模式定义

C++组合模式(Composite Pattern)是一种结构型设计模式,他允许将对象组合成树形结构来表示“部分-整体”的层次结构;在组合模式中有两种基本类型的对象:叶子对象和组合对象,叶子对象时没有子对象的,而组合对象则是拥有子对象的。叶子对象和组合对象都实现了相同的接口,以便可以用相同的方式处理他们。

简单的C++组合模式实例

#include <iostream>
#include<vector>//抽象基类,定义组合对象和叶子对象的公共接口,
class Component
{
public://纯虚函数,需要子类实现,virtual void operation() = 0;
};//叶子对象,无子对象,实现Component接口
class Leaf :public Component
{
public:void operation() override{std::cout << "Lead operation" << std::endl;}
};
//组合对象,拥有子对象,实现Component接口
class Composite :public Component
{
public://添加子对象到子对象列表中void add(Component* component){children.push_back(component);}void operation() override{std::cout << "Composite operation" << std::endl;for (auto child : children){child->operation();}}
private:std::vector<Component*>children; //子对象列表
};
int main()
{Leaf leaf;Composite composite;composite.add(&leaf);composite.add(&leaf);composite.add(&leaf);composite.operation();return 0;}

在这里插入图片描述

文件系统来演示组合模式

我们以一个文件系统为例,使用组合模式来表示文件系统中的目录文件的关系

#include <iostream>
#include<string>
#include<vector>//抽象基类,定义了组合对象和叶子对象的公共接口
class FileSystemComponent
{
public:virtual void showInfo() = 0;virtual ~FileSystemComponent() {};
};
//叶子对象:文件
class File :public FileSystemComponent
{
public:File(const std::string& name) :m_Name(name) {}void showInfo() override{std::cout << "File:" << m_Name << std::endl;}
private:std::string m_Name;
};//组合对象:目录
class Directory :public FileSystemComponent
{
public:Directory(const std::string& name) :m_Name(name) {}void add(FileSystemComponent* com){children.push_back(com);}void showInfo() override{std::cout << "Directory:" << m_Name << std::endl;for (auto& item : children){item->showInfo();}}private:std::string m_Name;std::vector<FileSystemComponent*> children;
};int main()
{Directory root("root"); //根节点Directory mnt("mnt");Directory tmp("tmp");root.add(&mnt);root.add(&tmp);File ext("ext");File nfs("nfs");mnt.add(&ext);tmp.add(&nfs);root.showInfo();return 0;}

在这里插入图片描述

http://www.hkea.cn/news/957709/

相关文章:

  • asia域名的网站竞价广告
  • 怎么注册公司支付宝账号seo求职信息
  • 多语言网站怎么做网络推广平台公司
  • 山东公司注册网站怎样写营销策划方案
  • 河北省香河县建设局网站中国互联网协会
  • 北京丰台区网站建设游戏推广赚佣金的平台
  • 网站没排名怎么办搜索引擎广告优化
  • wordpress内容主题模板网络网站推广选择乐云seo
  • 电子元器件商城网站建设百度开户怎么开
  • 企业网站开发基本流程百度博客收录提交入口
  • 甘特图模板关于网站建设微信营销模式
  • 网站建设的swot分析长尾关键词挖掘精灵
  • 发布自己的做家教的网站网店运营推广登录入口
  • b s网站系统如何做性能测试百度推广运营怎么做
  • 洛阳seo外包公司费用seo的中文意思
  • 政府网站建设遵循的原则seo网站内容优化
  • java做网站具体步骤邵阳seo优化
  • 自己做的网站如何放进服务器今天今日头条新闻
  • 男装网站的网站建设背景惠州seo按天计费
  • 如何快速提高网站排名互联网项目推广
  • icp备案网站名称更改成都网站设计
  • 企业网站建设需求分析seo排名资源
  • python基础教程雪峰东莞搜索seo网站关键词优化
  • b2b网站开发供应商小程序开发教程全集免费
  • 用自己的手机做网站外链网站是什么
  • 市场调研公司介绍网站推广优化公司
  • 玉溪人民政府网站建设现状新网站seo
  • 湖南餐饮网站建设2023北京封控了
  • 重庆网站设计人员外贸网站搭建推广
  • 局域网内的网站建设西安网站建设公司排名