组合模式:允许你将对象组合成树形结构来变现“整体/部分”层次结构。组合能让客户以一致的方式处理个别对象及对象组合。

组合模式_组合模式 cocos2d

这个模式常用语UI组件的组织结构上,也很好理解。

在cocos2d中也不例外的应用了组合模式:


class CC_DLL CCNode : public CCObject{

  CCArray *m_pChildren;               ///< array of children nodes

  virtual void addChild(CCNode * child);

CCArray是一个可变数组,所有继承自CCNode的子类都可以通过addChild方法添加自己的子类,最后就成了一个树形结构,而且没有严格意义上的叶节点。