3
我一直試圖在過去的2天,發現我怎麼在C++以下的事情:c + +提振屬性樹獲取值
我有一個JSON字符串:
[
{
"pid" : 0,
"nick":"Foo",
"score":12,
"ping":50
},
{
"pid":1,
"nick":"Bar",
"score":23,
"ping":24
}
]
我想遍歷所有這些孩子,並將例如PlayerID的值放在std::vector
中,以便我可以返回所有這些孩子。
當我被困在這裏:
// some code
boost::property_tree::ptree pt;
boost::property_tree::read_json(ss, pt);
std::vector<int> players;
int pid;
BOOST_FOREACH(boost::property_tree::ptree::value_type &v, pt.get_child("pid")) // I also tried with pt or pt.get_child("")
{
pid = v.second.data();
players.push_back(pid);
}
return players;
我看了看文檔,但無法找到什麼好東西。另外,我已經嘗試了幾乎所有的東西,如果它沒有錯誤地編譯,它會給我什麼()期望的對象或類似的東西。我真的陷入困境,任何幫助表示讚賞!提前致謝。
我已經試過了藏漢,試了一下,現在再次但是''''終止叫做拋出的「助推:: exception_detail :: clone_impl <提振:: exception_detail的實例後:: error_info_injector>' 什麼():<未指定文件>(1):預期對象 '''' –
什麼版本的Boost?您正在觀察Bug 4387(https://svn.boost.org/trac/boost/ticket/4387); JSON解析器不允許頂層數組。我在兩年前解決了這個問題。 –
那麼,從我的軟件包管理器告訴我 - 「版本:1.42.0」。 –