组合模式(Composite)

简介: 组合模式(Composite)

组合模式(Composite):

将所有对象组织在一个树状结构之下,用来实现对象间部分—整体之间的关系,使得用户对单个对象和组合对象的使用具有一致性。

#include <list>
#include <iostream>
#include <string>
using namespace std;
class Component{
    protected:
        string name;
        public:
            virtual void Add(Component *file)=0;
            virtual void Remove(Component *file)=0;
            virtual list <Component *>* Get()=0;            
}; 
class Leaf:public Component{
    public:
        Leaf(string name)
        {
            this->name=name;
        }
        void Add(Component *file){
            cout<<"Cannot add to a leaf"<<endl;
        }
        void Remove(Component *file)
        {
            cout<<"Cannot remove from a leaf"<<endl;
        }
        list <Component *> * Get()
        {
            return NULL;
        }
};
class Composite:public Component{
    private:
        list <Component *> p;
    public:
        Composite(string name){
            this->name=name;
        }   
        void Add(Component *file){
            p.push_back(file);
        }
        void Remove(Component *file){
            p.remove(file);
        }
        list <Component *> * Get()
        {
            this->name;
        }
};
class manu:public Compsite{
//类似于dos命令下cd之类的进出命令使用  
};
int main(void)
{
   //略
    return 0;
}
相关文章
|
存储 安全
组合模式(Composite)
组合模式(Composite)
118 0
|
设计模式 Java 容器
设计模式~组合模式(composite)-16
目录 (1)优点: (2)缺点: (3)使用场景: (4)注意事项: (5)应用实例 代码
66 0
|
设计模式 Java 数据安全/隐私保护
Java设计模式-组合模式(Composite)
Java设计模式-组合模式(Composite)
|
存储 设计模式 安全
结构型模式 - 组合模式(Composite Pattern)
结构型模式 - 组合模式(Composite Pattern)
|
设计模式
我学会了,组合模式
组合模式属于结构型模式,这个类型的设计模式总结出了 类、对象组合后的经典结构,将类、对象的结构和使用解耦了,花式的去借用对象。
112 0
我学会了,组合模式
|
安全 Java 容器
结构型:组合模式 Composite
主要内容有: 该模式的介绍,包括: 引子、意图(大白话解释) 类图、时序图(理论规范) 该模式的代码示例:熟悉该模式的代码长什么样子 该模式的优缺点:模式不是万金油,不可以滥用模式 该模式的应用案例:了解它在哪些重要的源码中被使用
168 0
|
设计模式 Java 容器
组合模式
组合模式
|
设计模式 算法
结构型-Composite
组合模式的原理与实现在 GoF 的《设计模式》一书中,组合模式是这样定义的: Compose objects into tree structure to represent part-whole hierarchies.Composite lets client treat individual objects and compositions of objects uniformly. 翻译成中文就是:将一组对象组织(Compose)成树形结构,以表示一种“部分 - 整体”的层次结构。组合让客户端(在很多设计模式书籍中,“客户端”代指代码的使用者。)可以统一单个对象和组合对象的处理逻辑。
130 0
|
存储 设计模式 Java
浅谈JAVA设计模式之——组合模式(Composite)
将对象组合成树形结构以表示"部分-整体"的层次结构。"Composite使得用户对单个对象和组合对象的使用具有一致性。
230 0
浅谈JAVA设计模式之——组合模式(Composite)
|
Java 设计模式