cocos2dx CCUserDefault 讲数据存储到xml中

    存储数据的类就是CCUserDefault  这个类实现了一个静态的方法,供我们调用具体的看下面的例子

 

    CCUserDefault::sharedUserDefault()->setIntegerForKey("level", mlevel);  //存储int类型的数据
    CCUserDefault::sharedUserDefault()->setIntegerForKey("money", money);
    CCUserDefault::sharedUserDefault()->setIntegerForKey("xp", xp);

 

 

  从上面的例子中可以看出  CCUserDefault  底层实现的其实就是一个key-value方式的 数据结构,可以用来存储c++的基本数据格式

 

   一下是简单的源码片段:

 

   class CC_DLL CCUserDefault
{
public:
    ~CCUserDefault();

    // get value methods

    /**
    @brief Get bool value by key, if the key doesn't exist, a default value will return.
     You can set the default value, or it is false.
    */
    bool    getBoolForKey(const char* pKey);
    bool    getBoolForKey(const char* pKey, bool defaultValue);
    /**
    @brief Get integer value by key, if the key doesn't exist, a default value will return.
     You can set the default value, or it is 0.
    */
    int     getIntegerForKey(const char* pKey);
    int     getIntegerForKey(const char* pKey, int defaultValue);
    /**
    @brief Get float value by key, if the key doesn't exist, a default value will return.
     You can set the default value, or it is 0.0f.
    */
    float    getFloatForKey(const char* pKey);
    float    getFloatForKey(const char* pKey, float defaultValue);
    /**
    @brief Get double value by key, if the key doesn't exist, a default value will return.
     You can set the default value, or it is 0.0.
    */
    double  getDoubleForKey(const char* pKey);
    double  getDoubleForKey(const char* pKey, double defaultValue);
    /**
    @brief Get string value by key, if the key doesn't exist, a default value will return.
    You can set the default value, or it is "".
    */
    std::string getStringForKey(const char* pKey);
    std::string getStringForKey(const char* pKey, const std::string & defaultValue);

    // set value methods

    /**
    @brief Set bool value by key.
    */
    void    setBoolForKey(const char* pKey, bool value);
    /**
    @brief Set integer value by key.
    */
    void    setIntegerForKey(const char* pKey, int value);

你可能感兴趣的:(cocos2dx)