//调用std::vector<std::string>类型的数组对象,不用retain不用release
std::string heroCharacterStr = heroItemElement->FirstChild()->Value();
std::vector<std::string> result = split(heroCharacterStr.c_str(), ",");
std::vector<std::string>::iterator it = result.begin();
for (it = result.begin(); it != result.end(); it++) {
    int cId = CCString::create(*it)->intValue();
    if (cId > 0) {
          NCharacter *character = NCharacter::createCharacterWithId(cId, ConchGame::data->xmlCharacter);
            if(character){
                characters->addObject(character);
            }
        }
    }


//split字符串分割函数
std::vector<std::string> split(const char *string, const char *patternStr)
{
    std::string str = string;
    std::string pattern = patternStr;
    std::string::size_type pos;
    std::vector<std::string> result;
    str+=pattern; //扩展字符串以方便操作
    int size=str.size();
    for(int i=0; i<size; i++)
    {
        pos=str.find(pattern,i);
        if(pos<size)
        {
            std::string s=str.substr(i,pos-i);
            result.push_back(s);
            i=pos+pattern.size()-1;
        }
    }
    return result;
}

其他参考



blog comments powered by Disqus

Published

03 June 2014

Tags