cocos2d-x节点(CCDataVisitor.h)API
来源:互联网 发布:现货黄金教学软件 编辑:程序博客网 时间:2024/05/21 22:59
本文来自http://blog.csdn.net/runaying ,引用必须注明出处!
cocos2d-x节点(CCDataVisitor.h)API
温馨提醒:为了大家能更好学习,强烈推荐大家看看本人的这篇博客 Cocos2d-X权威指南笔记
根据你的多态对象类型帮助你执行动作
///\cocos2d-x-3.0alpha0\cocos2dx\cocoa//根据你的多态对象类型帮助你执行动作#ifndef __CCDATAVISITOR_H__#define __CCDATAVISITOR_H__#include "platform/CCPlatformMacros.h"#include <string>NS_CC_BEGINclass Object;class Bool;class Integer;class Float;class Double;class String;class Array;class Dictionary;class Set;class Data;/** * @addtogroup data_structures * @{ *//** * 根据你的多态对象类型帮助你执行动作 * *用例: * - 序列化的数据 * - 打印漂亮的对象 * - 安全读取 Array, Dictionary, Set * * 用途: * 1. DataVisitor 的子类 * 2. 你需要执行的对象 overload visit() 方法 * 3. 在 visitObject() 处理其它对象 * 4. 使用 Object::acceptVisitor() 通过你的 visitor */class CC_DLL DataVisitor{public: /** * @js NA * @lua NA */ virtual ~DataVisitor() {} /** 默认的方法,可以称为 non-overloaded 方法 and 不能识别的对象 */ virtual void visitObject(const Object *p) = 0; virtual void visit(const Bool *p); virtual void visit(const Integer *p); virtual void visit(const Float *p); virtual void visit(const Double *p); virtual void visit(const String *p); virtual void visit(const Array *p); virtual void visit(const Dictionary *p); virtual void visit(const Set *p); virtual void visit(const Data *p);};class CC_DLL PrettyPrinter : public DataVisitor{public: PrettyPrinter(int indentLevel = 0); virtual void clear(); virtual std::string getResult(); virtual void visitObject(const Object *p); virtual void visit(const Bool * p); virtual void visit(const Integer *p); virtual void visit(const Float *p); virtual void visit(const Double *p); virtual void visit(const String *p); virtual void visit(const Array *p); virtual void visit(const Dictionary *p); virtual void visit(const Set *p); virtual void visit(const Data *p);private: void setIndentLevel(int indentLevel); int _indentLevel; std::string _indentStr; std::string _result;};// end of data_structure group/// @}NS_CC_END#endif // __CCDATAVISITOR_H__
- cocos2d-x节点(CCDataVisitor.h)API
- cocos2d-x节点(cocos2d.h)API
- cocos2d-X 节点(CCNode.h)API
- cocos2d-X 节点(CCLayer.h)API
- cocos2d-X 节点(CCMenu.h)API
- cocos2d-X 节点(CCMenuItem.h)API
- cocos2d-X 节点(CCSprite.h)API
- cocos2d-X 节点(CCTexture2D.h)API
- cocos2d-X 节点(SpriteBatchNode.h.)API
- cocos2d-X 节点(CCSpriteFrame.h..)API
- cocos2d-X 节点(CCAnimationCache.h)API
- cocos2d-X 节点(CCCamera.h.)API
- cocos2d-X 节点(CCAction.h)API
- cocos2d-X 节点(CCActionManager.h)API
- cocos2d-X 节点(CCIMEDelegate.h)API
- cocos2d-X 节点(CCLabelAtlas.h)API
- cocos2d-X 节点(CCLabelBMFont.h)API
- cocos2d-X 节点(CCLabelTTF.h)API
- cocos2d-x节点(CCAutoreleasePool.h)API
- cocos2d-x节点(CCBool.h)API
- linux多线程编程
- C++ 程序设计原理与实践 第四章答案
- cocos2d-x节点(CCData.h)API
- cocos2d-x节点(CCDataVisitor.h)API
- linux守护进程
- Understanding Unix/Linux Programming 笔记:chapter 13:基于数据报(Datagram)的编程:编写许可证服务器
- cocos2d-x节点(CCDouble.h)API
- cocos2d-x节点(CCFloat.h)API
- cocos2d-x节点(CCGeometry.h)API
- cocos2d-x节点(CCInteger.h)API
- cocos2d-x节点(CCObject.h)API
- linux进程调度