我只是希望能够让用户输入一个字符串,该字符串是特定对象的名称,然后让GetString()返回其字符串。这是我使用...
的JSON文件的一部分"Rogue Refiner": {
"name": "Rogue Refiner",
"power": "3",
"toughness": "2"
},
这就是我返回我想要的具体值的方式......
Document d;
d.Parse(data.c_str());
d["Rogue Refiner"]["name"].GetString());
我希望能够让用户在命令提示符下输入一个字符串,因为JSON文件有数千个对象,例如" Rogue Refiner"。我以为这会起作用......
Document d;
d.Parse(data.c_str());
std::string stringName;
std::cin >> stringName;
d[stringName]["name"].GetString());
但它不会奏效。错误说"没有操作员" []"匹配这些操作数"。因此,如果有人知道如何让用户输入他们想要找到的对象的名称,那就太棒了。
答案 0 :(得分:0)
operator[]
的{{1}}需要Document
。请改用const char *
。