标签:cout return jsoncpp 解决 root name bsp str error
1、编译下面代码时,遇到标题中的错误
const char* str = "{\"name\":\"xiaoming\",\"age\":18}"; Json::Value root; Json::Reader reader; if (!reader.parse(str, root)) { cout << "Parse from str failed\n"; return; } string name = root["name"].asCString(); int age = root["age"].asInt(); std::cout << "name: " << name << " age:" << age;
2、解决方法,根据提示修改代码,如下:
Json::CharReaderBuilder b; Json::CharReader* reader(b.newCharReader()); Json::Value root; JSONCPP_STRING errs; bool ok = reader->parse(str, str + std::strlen(str), &root, &errs); if (ok&&errs.size() == 0) { std::string upload_id = root["uploadid"].asString(); // 访问节点,upload_id = "UP000000" int code = root["code"].asInt(); // 访问节点,code = 100 } delete reader;
error C4996: ‘Json::Reader::Char’: Use CharReader and CharReaderBuilder instead
标签:cout return jsoncpp 解决 root name bsp str error
原文地址:http://www.cnblogs.com/happykoukou/p/7987268.html