组合模式的使用场景
(1)通常,组合模式会组合出树型结构来,这意味着所有可以使用对象树来描述或操作的功能,都可以考虑使用组合模式,如UI界面设计中的容器对象、读取XML或对语句进行语法分析、OA系统中组织结构的处理、操作系统的资源管理器等。
(2)如果想表示对象的部分——整体层次结构,把整体和部分的操作统一起来,使得层次结构实现更简单,从外部来使用这个层次结构也容易。
(3)如果希望统一地使用组合结构中的所有对象,可以选用组合模式。
//声明文件
//**************************************************************************
//结构型模式:组合模式(安全型)
//场景:绘图(基本图形和复合图形)
#include <iostream>
#include <string>
#include <list>
using namespace std;
//************************抽象组件类******************
class CGUI{
protected:
string